用ggplot来画基因富集气泡图

​用DAVID或者clusterprofiler 做基因富集的常常需要挑选一下想展示的通路或者排一下通路的顺序,而且,clusterprofiler展示的顺序有时候跟输入的顺序不一样。因此,用ggplot可以方便对各种来源的富集结果实现气泡图。

如用clusterprofiler做富集

#GeneSymbol为输入的基因集
toENTREZID = bitr(GeneSymbol,fromType = "SYMBOL",toType = "ENTREZID",OrgDb = "org.Mm.eg.db")
goBP = enrichGO(OrgDb="org.Mm.eg.db",gene = as.vector(toENTREZID$ENTREZID),ont = "BP", pvalueCutoff = 0.05, readable= TRUE)
dotplot(goBP,showCategory=10)+scale_color_gradient(low = "#132B43", high = "#56B1F7")
head(goBP@result)
image
image

我们再用ggplot画气泡图,结果看起来和clusterprofiler画的差不多,不一样的地方在于clusterproliler的x轴默认的gene ratio,而ggplot我们用的是count,这个可以自己选择,再就是ggplot我们可以用level调节go term的顺序,如最上面两个红框里相同基因数但是pvalue不同的go term 在ggplot里面符合上面表中的顺序,而clusterprofiler是相反的

#goBP为clusterprofiler的富集结果,取前10个来画图。
goinput<-goBP@result[1:10,]
head(goinput)
#使画出go term的顺序与输入的一致
goinput$Description<-factor(goinput$Description,levels = rev(goinput$Description))
#reorder使纵轴按照go term 和count排序
​goinput$Description<-factor(goinput$Description,levels = rev(goinput$Description))
ggplot(goinput,aes(x = Count, y =reorder(Description,Count)))+ 
  geom_point(aes(size=Count,color=p.adjust))+
  scale_colour_gradient(low="#132B43",high="#56B1F7")+
  labs(
       color=expression(p.adjust),
       size=" Count Number",
       x="Gene Count"
      )+
  theme_bw()+
  theme(
    axis.text.y = element_text(size = rel(1.8)),
    axis.title.x = element_text(size=rel(1.8)),
    axis.title.y = element_blank()
  )+ scale_size(range=c(5, 10))
​

image
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 回顾 首先对基因表达分析(上)做一个简单的回顾 研究基因表达的有如下工具:RNA-Seq,microarray, ...
    xuzhougeng阅读 50,899评论 8 115
  • GOplot包介绍 GOplot包用于生物数据的可视化。更确切地说,该包将表达数据与功能分析的结果整合并进行可视化...
    生信宝典阅读 3,252评论 0 26
  • 我们统一选择p<0.05而且abs(logFC)大于1的基因为显著差异表达基因集,对这个基因集用R包做KEGG/G...
    xuzhougeng阅读 26,090评论 11 86
  • 夜是深蓝色的光 我在大地上张狂 蔑视神蓝之血 把虚伪的面具张贴 在原始的欲望下 与魔鬼讲价 我出卖的不是我 是盛大...
    椽罔阅读 284评论 0 3
  • 孩子上学后,除了成绩,作业是家长之间讨论得最多的话题,看法更是各有不同。 笑笑的同学(遥遥)爸爸不主张写作业,觉得...
    文艺没范儿阅读 167评论 0 1