You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何绘制带分组名称标注的GSEA图?现有工具未生成目标图

绘制目标GSEA图的可行方法

如果你用fgsea和gggsea都没能复现目标样式的GSEA图,可以试试以下两种方案:

1. 基于fgsea+ggplot2自定义绘图

fgsea包的分析结果包含了绘制GSEA图所需的全部核心数据,你可以手动提取后用ggplot2分图层构建出目标图:

  • 先完成fgsea富集分析,拿到结果对象
  • 提取目标通路的leadingEdge基因,以及基因排序后的位置信息
  • 计算富集得分(ES)的累积变化,构建曲线数据
  • 分图层绘制基因标记点、ES曲线,再添加通路信息标注

示例代码:

library(fgsea)
library(ggplot2)

# 假设已准备好通路集合pathways和基因排序向量gene_ranks
fgsea_res <- fgsea(pathways = pathways, stats = gene_ranks, nperm = 1000)
# 筛选你要绘制的目标通路
target_res <- fgsea_res[fgsea_res$pathway == "你的目标通路名称", ]

# 构建富集得分曲线数据
es_values <- cumsum(ifelse(names(gene_ranks) %in% target_res$leadingEdge,
                           1/(length(gene_ranks) - length(target_res$leadingEdge)),
                           -1/length(target_res$leadingEdge)))
es_df <- data.frame(pos = 1:length(gene_ranks), es = es_values)

# 构建富集基因位置数据
gene_pos_df <- data.frame(pos = which(names(gene_ranks) %in% target_res$leadingEdge))

# 绘制图形
ggplot() +
  # 底部富集基因标记点
  geom_point(data = gene_pos_df, aes(x = pos, y = 0), color = "#ff0000", size = 0.6) +
  # 富集得分折线
  geom_line(data = es_df, aes(x = pos, y = es), color = "#0000ff", linewidth = 1) +
  # 顶部通路信息标注
  annotate("text", x = median(es_df$pos), y = max(es_df$es) * 1.1,
           label = paste0(target_res$pathway, "\nNES: ", round(target_res$NES, 2), "\np-value: ", round(target_res$pval, 4)),
           size = 4, fontface = "bold") +
  # 调整主题样式
  theme_minimal() +
  labs(x = "Gene Rank", y = "Enrichment Score") +
  theme(axis.text = element_text(size = 10),
        axis.title = element_text(size = 12, face = "bold"))

2. 使用clusterProfiler的gseaplot2函数

clusterProfiler包的gseaplot2()支持灵活调整GSEA图的样式,通过参数可以匹配目标图的布局:

  • 设置subplots = c(1,2)可以同时显示基因标记和ES曲线
  • 用color参数调整曲线和标记点颜色
  • 通过title参数添加通路及统计信息标注

示例代码片段:

library(clusterProfiler)
# 假设已完成GSEA分析得到gsea_res对象
gseaplot2(gsea_res, geneSetID = "你的目标通路名称",
          subplots = c(1,2), color = "blue",
          title = paste0("通路名称\nNES: 1.87, p-value: 0.023"))

内容的提问来源于stack exchange,提问作者user2110417

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 04:25:40