ggplot2优雅绘制Stamp风格图

科技   2024-10-17 21:43   陕西  

欢迎关注R语言数据分析指南

本节来绘制一个常见的Stamp风格柱状图,图形看起来比较简单,但是细节也是比较多的。下面小编就通过一个案例来进行介绍,数据为随意构建无实际意义,整个过程仅供参考,只做绘图展示。数据稍后会上传到交流群内,购买过小编绘图文档的朋友可在所加的交流群内获取下载,有需要的朋友可关注文末介绍购买小编的R绘图文档。购买前请咨询,零基础不要买。

结果展示

图形解读

此类图多用于PICRUSt分析的结果,因此难点在于先要对原始数据做PICRUSt分析得到pathway的结果,继而按照样本分组对其做差异分析,差异分析的方法很多Deseq2、ALDEx2、LinDA、edgeR等需要根据需求选择合适的算法,若只想对分组间进行差异分析用wilcox_test也可。同时此图要展示的内容也较多,常见的有95% confidence intervals,Difference between proportions(%)之类,此类使用Wilcoxon rank-sun test可得到绘图需要的结果文件。若是为16S测序结果需要进行差异菌群分析则使用前面所介绍的几种方法则更为合适,因此难点始终在于数据统计分析。

代码部分

library(tidyverse)
library(patchwork)  
library(ggprism) # Version: 1.05
f1 <- data_pro %>%
  ggplot(aes(mean,description,fill=Group))+
  geom_bar(stat="identity",position=position_dodge(width=0.8),width = 0.8)+
  geom_errorbar(aes(xmax=mean+sd,xmin=mean-sd),
                position=position_dodge(width=0.8),
                width=0.25,size=0.3,color="black")+
  scale_fill_manual(values =c("#B395BD","#7DAEE0"))+ 
  labs(x="Proportions(%)",y=NULL)+
  theme(legend.position = "top",
        axis.ticks.y=element_blank(),
        panel.background = element_blank(),
        plot.background = element_blank(),
        axis.text.y=element_text(color="black",size=9),
        axis.text.x=element_text(color="black",size=9),
        axis.title.x=element_text(color="black",size=11),
        plot.margin = unit(c(0.5,0.5,0,0),"cm"))

f2 <- data_pro %>% 
  ggplot(aes(y=description))+
  geom_errorbar(aes(xmin = effect.low, xmax = effect.high),
                position = position_dodge(0.62), width = 0.25,size=0.3)+
  geom_point(aes(x=effect),shape = 21,size=3,fill="skyblue")+
  geom_text(aes(label=p_signif),x=9.5,hjust=0.5,size=5)+
  labs(y=NULL)+
  theme(axis.text.y=element_blank(),
        axis.ticks.y=element_blank(),
        axis.line.y=element_blank(),
        panel.background = element_blank(),
        plot.background = element_blank(),
        axis.text.x=element_text(color="black",size=9),
        axis.title.x=element_text(color="black",size=11),
        plot.margin = unit(c(0.5,1,0,0),"cm"))

f1+f2

关注下方公众号下回更新不迷路

购买介绍

本节介绍到此结束,有需要学习R数据可视化的朋友欢迎到淘宝店铺:R语言数据分析指南,购买小编的R语言可视化文档(2024版),购买将赠送2023年的绘图文档内容。目前此文档(2023+2024)已经更新上传200案例文档,每个案例都附有相应的数据和代码,并配有对应的注释文档,方便大家学习和参考。

2024更新的绘图内容将同时包含数据+代码+注释文档+文档清单,2023无目录仅有数据文件夹,小编只分享案例文档,不额外回答问题,无答疑服务,零基础不推荐买。

案例特点

所选案例图均属于个性化分析图表完全适用于论文发表,内容异常丰富两年累计发布案例图200+,2024年6月起提供html版注释文档更加直观易学。文档累计上千人次购买拥有良好的社群交流体验。R代码结构清晰易懂,为防止中文乱码提供单独的注释文档

群友精彩评论

淘宝店铺

2024年已更新案例图展示


R语言数据分析指南
R语言重症爱好者,喜欢绘制各种精美的图表,喜欢的小伙伴可以关注我,跟我一起学习
 最新文章