这图怎么画| 富集分析之双向柱状图

简介: 这图怎么画| 富集分析之双向柱状图

enrich_barplot

写在前面

【这图怎么画】系列的图都来自VIP群里同学的提问。推文只是对图片的复现,不代表作者对图片展现形式的认同。欢迎同学们在群里分析有意思的图片。

本期图片

enrich_barplot

Title:The multiomics landscape of serum exosomes during the development of sepsis

期刊:Journal of Advanced Research

Doi:https://doi.org/10.1016/j.jare.2021.11.005

相比于以往的富集分析可视化形式:GOplot | 更美观的富集分析可视化,本图将pvalue以及富集「基因数」都用条形图来展示,看上去更直观一点。

刚开始以为是很普通的双向柱状图(正负条形图),后来发现颜色和坐标轴标签都不好修改,因此还是用了拼图。「这期写的一般,有更好办法的同学欢迎私信反馈」

复现结果

复现结果

示例数据和代码领取

详见:这图怎么画| 富集分析之双向柱状图

绘图

# 创建示例数据
dt = data.frame(pathway = paste('pathway',1:20),
                Classification = rep(paste('Class',1:5),4),
                pvalue  = runif(20,0.0001,0.05),
                count = floor(runif(20,5,20)))
head(dt)  
dt = dt[order(dt$Classification),]
dt$pathway = factor(dt$pathway, levels =  dt$pathway)   
library(ggplot2)
# 左图
p1 <- ggplot(dt, aes( x = pathway,
                y = log10(pvalue), #为了方向向左,故不加负号
                fill = Classification))+
  scale_fill_manual(values = rev(c('#e4e242','#8ab92b','#80c5d8','#437eb8','#c4a2c5')))+ # rev是因为颜色写反了
  scale_y_continuous(expand = c(0,0),labels = c(3,2,1,0)) +#标签为负号,自行修改
  geom_bar(stat = 'identity')+
  coord_flip()+
  ylab('-log10(P-value)')+
  xlab('')
p1
# 右图
p2 <- ggplot(dt, aes( x = pathway,
                      y = count),fill = '#595758')+
  scale_y_continuous(expand = c(0,0)) +
  geom_bar(stat = 'identity')+
  coord_flip()+
  ylab('No. of genes')+
  xlab('') +
  theme(axis.text.y = element_blank(),
        axis.ticks.y = element_blank(),
        axis.title.y = element_blank())
p2
library(patchwork)
p1+p2+plot_layout(guides = 'collect')+ plot_layout(widths = c(2, 1.5))
# 保存
ggsave('enrich_barplot.pdf',width = 7,height = 5)

result

之后在AI里稍微调整一下即可。

复现结果

往期内容

  1. CNS图表复现|生信分析|R绘图 资源分享&讨论群!
  2. 这图怎么画| 有点复杂的散点图
  3. 这图怎么画 | 相关分析棒棒糖图
  4. 组学生信| Front Immunol |基于血清蛋白质组早期诊断标志筛选的简单套路
  5. (免费教程+代码领取)|跟着Cell学作图系列合集
  6. Q&A | 如何在论文中画出漂亮的插图?
  7. 跟着 Cell 学作图 | 桑葚图(ggalluvial)
  8. R实战 | Lasso回归模型建立及变量筛选
  9. 跟着 NC 学作图 | 互作网络图进阶(蛋白+富集通路)(Cytoscape)
  10. R实战 | 给聚类加个圈圈(ggunchull)
  11. R实战 | NGS数据时间序列分析(maSigPro)
  12. 跟着 Cell 学作图 | 韦恩图(ggVennDiagram)
相关文章
|
人工智能 数据挖掘
这图怎么画| 气泡热图(基因表达泛癌分析)
这图怎么画| 气泡热图(基因表达泛癌分析)
170 0
|
机器学习/深度学习
这图怎么画| 相关性热图+柱状图
这图怎么画| 相关性热图+柱状图
134 0
|
人工智能 数据可视化 Go
R绘图实战|GSEA富集分析图
GSEA(Gene Set EnrichmentAnalysis),即基因集富集分析,它的基本思想是使用预定义的基因,将基因按照在两类样本中的差异表达程度排序,然后检验预先设定的基因集合是否在这个排序表的顶端或者底端富集。
2730 0
R绘图实战|GSEA富集分析图
|
7月前
|
存储 数据可视化 数据挖掘
R语言绘制圈图、环形热图可视化基因组实战:展示基因数据比较
R语言绘制圈图、环形热图可视化基因组实战:展示基因数据比较
|
人工智能 数据挖掘
这图怎么画 | 相关分析棒棒糖图
这图怎么画 | 相关分析棒棒糖图
134 0
|
7月前
|
数据可视化
实现绘制Sankey桑基图(河流图、分流图)流程数据可视化
实现绘制Sankey桑基图(河流图、分流图)流程数据可视化
|
7月前
|
数据可视化 定位技术 网络架构
R语言在地图上绘制月亮图、饼状图数据可视化果蝇基因种群
R语言在地图上绘制月亮图、饼状图数据可视化果蝇基因种群
|
7月前
|
算法 数据可视化
R语言社区检测算法可视化网络图:ggplot2绘制igraph对象分析物种相对丰度
R语言社区检测算法可视化网络图:ggplot2绘制igraph对象分析物种相对丰度
|
7月前
R语言中绘制箱形图的替代品:蜂群图和小提琴图
R语言中绘制箱形图的替代品:蜂群图和小提琴图
|
7月前
|
数据可视化 算法 数据挖掘
PCA(主成分分析),CA(对应分析)夫妻职业差异和马赛克图可视化
PCA(主成分分析),CA(对应分析)夫妻职业差异和马赛克图可视化