GO 条形图

作者

[编辑] 郑虎;

[审核] .

GO 条形图用于显示按 z-score 或 adjusted p-value 的负对数排序的 Z-score 彩色条形图。

环境配置

  • 系统: Cross-platform (Linux/MacOS/Windows)

  • 编程语言: R

  • 依赖包: GOplot

# 安装包
if (!requireNamespace("GOplot", quietly = TRUE)) {
  install.packages("GOplot")
}

# 加载包
library(GOplot)

数据准备

加载的数据是具有七个列的GO富集的结果:category, GO id, GO term, gene count, gene name, logFC, adjust pvalue and zscore。

# 加载数据
data <- read.delim("files/Hiplot/077-gobar-data.txt", header = T)

# 整理数据格式
colnames(data) <- c("category","ID","term","count","genes","logFC","adj_pval","zscore")
data <- data[data$category %in% c("BP","CC","MF"),]
data <- data[!is.na(data$adj_pval),]
data$adj_pval <- as.numeric(data$adj_pval)
data$zscore <- as.numeric(data$zscore)

# 查看数据
head(data)
  category         ID              term count  genes        logFC adj_pval
1       BP GO:0007507 heart development    54   DLC1 -0.970787511 2.17e-06
2       BP GO:0007507 heart development    54   NRP2 -1.515317303 2.17e-06
3       BP GO:0007507 heart development    54   NRP1 -1.141231543 2.17e-06
4       BP GO:0007507 heart development    54   EDN1  1.381300593 2.17e-06
5       BP GO:0007507 heart development    54 PDLIM3 -0.887693887 2.17e-06
6       BP GO:0007507 heart development    54   GJA1  -0.81794802 2.17e-06
      zscore
1 -0.8164966
2 -0.8164966
3 -0.8164966
4 -0.8164966
5 -0.8164966
6 -0.8164966

可视化

# GO 条形图
p <- GOBar(data, display = "multiple", order.by.zscore = T,
           title = "GO Enrichment Barplot ", 
           zsc.col = c("#EF8A62","#F7F7F7","#67A9CF")) + 
    theme(plot.title = element_text(hjust = 0.5),
          axis.text.x = element_text(size = 8))

p
图 1: GO 条形图

如示例图所示,x 轴表示每个 GO term,y 轴表示 -log(adj_pvalue),每个条按 z-score 着色。如果显示分面,则面板的宽度将与 x 刻度的长度成正比。