前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >enrichplot—简而美的富集结果可视化!

enrichplot—简而美的富集结果可视化!

作者头像
作图丫
发布2022-03-29 14:41:06
3.9K0
发布2022-03-29 14:41:06
举报
文章被收录于专栏:作图丫

导语

GUIDE ╲

enrichplot实现了多种可视化方法来解释富集结果。支持从DOSE (Yu et al. 2015)、clusterProfiler (Yu et al. 2012)、ReactomePA (Yu and He 2016)和meshes获得的富集结果进行可视化。同时支持过表达分析(ORA)和基因集富集分析(GSEA)。今天我们来展示enrichplot神奇的绘图功能。

准备工作

代码语言:javascript
复制
if (!requireNamespace("BiocManager", quietly = TRUE))
    install.packages("BiocManager")
BiocManager::install("enrichplot")
library(enrichplot);browseVignettes("enrichplot")

library(DOSE)
library(dplyr)
library(clusterProfiler)

##输入基因集合DEG
##及每个基因的倍数变换值fc

edo <- enrichDGN(DEG)
#entrez gene ID
#除了DisGeNET,包括GO、KEGG、DO、wikiPathways、MSigDb

绘图函数

01

goplot()

还记得%>%这个管道符吗?

代码语言:javascript
复制
enrichGO(DEG,'org.Hs.eg.db') %>% goplot()

#这里我只富集到一个GO term,报错了。

02

barplot() & dotplot()

条形图、泡泡图是最常用的富集可视化方法,用条形高度、点大小和颜色来描述富集分数(例如p值)和基因数或比例。

代码语言:javascript
复制
barplot(edo, showCategory=50)

dotplot(edo, showCategory=50)

03

cnetplot()

直观展示通路和基因的联系。

代码语言:javascript
复制
setReadable(edo, 'org.Hs.eg.db', 'ENTREZID') %>% cnetplot(,
 showCategory = 20,#展示富集条目数量,默认5
  foldChange = fc,#倍数值
  colorEdge = TRUE,
categorySize='pvalue',# 中心点大小, or 'geneNum'
  circular = TRUE,#圆形排列
  node_label = "all"
)

这里有个坑,但我不说,大家自己动手画图试试吧。感谢Erqiang Hu(enrichplot,DOSE作者之一)伸出援手。

04

emapplot()

构建网络,其边连接重叠的基因集。这样一来,有重叠的基因集聚在一起,便于识别功能模块。

代码语言:javascript
复制
emapplot(
  edo,
  showCategory = 30,
  color = "p.adjust",#设置颜色,也可以用pvalue, qvalue
  layout = "sphere",##布局
  pie_scale = 1,#点大小
  line_scale = 1#线条粗细
)

05

heatplot()

类似于cnetplot,展示为一个热图。适用于基因多,heatplot可以简化结果,更容易识别表达模式。

代码语言:javascript
复制
setReadable(edo, 'org.Hs.eg.db', 'ENTREZID') %>% heatplot(,foldChange=fc)

06

pmcplot()

根据PubMed Central的查询结果绘制出版物数量/比例趋势图。

代码语言:javascript
复制
pmcplot(edo$Description[1:5], 2015:2020)

小编总结

只用一行代码也能画出美观又有创意的富集分析图形,快去试试吧~

代码语言:javascript
复制
if (!requireNamespace("BiocManager", quietly = TRUE))
    install.packages("BiocManager")
BiocManager::install("enrichplot")
library(enrichplot);library(DOSE);library(dplyr);library(clusterProfiler)

##输入基因集合DEG及每个基因的倍数变换值fc

edo <- enrichDGN(DEG)

#golpot
enrichGO(DEG,'org.Hs.eg.db') %>% goplot()

#barplot
barplot(edo, showCategory=50)

#dotplot
dotplot(edo, showCategory=50)

#cnetplot
setReadable(edo, 'org.Hs.eg.db', 'ENTREZID') %>% cnetplot(,showCategory = 20,foldChange = fc,colorEdge = TRUE,categorySize='pvalue',circular = TRUE,node_label = "all")

#emapplot
emapplot(edo,showCategory = 30,color = "p.adjust",layout = "sphere",pie_scale = 1,line_scale = 1)

#heatplot
setReadable(edo,'org.Hs.eg.db') %>% heatplot(,foldChange=fc)

#pmcplot
pmcplot(edo$Description[1:5], 2015:2020)
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-07-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作图丫 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档