enrich_barplot
写在前面
【这图怎么画】系列的图都来自VIP群
里同学的提问。推文只是对图片的复现,不代表作者对图片展现形式的认同。欢迎同学们在群里分析有意思的图片。
本期图片
enrich_barplot
❝Title:The multiomics landscape of serum exosomes during the development of sepsis
期刊:Journal of Advanced Research
❞
相比于以往的富集分析可视化形式: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
里稍微调整一下即可。
复现结果
往期内容
- CNS图表复现|生信分析|R绘图 资源分享&讨论群!
- 这图怎么画| 有点复杂的散点图
- 这图怎么画 | 相关分析棒棒糖图
- 组学生信| Front Immunol |基于血清蛋白质组早期诊断标志筛选的简单套路
- (免费教程+代码领取)|跟着Cell学作图系列合集
- Q&A | 如何在论文中画出漂亮的插图?
- 跟着 Cell 学作图 | 桑葚图(ggalluvial)
- R实战 | Lasso回归模型建立及变量筛选
- 跟着 NC 学作图 | 互作网络图进阶(蛋白+富集通路)(Cytoscape)
- R实战 | 给聚类加个圈圈(ggunchull)
- R实战 | NGS数据时间序列分析(maSigPro)
- 跟着 Cell 学作图 | 韦恩图(ggVennDiagram)