跟着 Cell 学作图 | 柱状图+误差棒+蜂群图

简介: 跟着 Cell 学作图 | 柱状图+误差棒+蜂群图

bar_errorbar_point

今天我们复现一幅2022年8月发表在Cell上的一副柱状图配色挺好看的。

「Title:」Targeted suppression of human IBD-associated gut microbiota commensals by phage consortia for treatment of intestinal inflammation

「DOI:」10.1016/j.cell.2022.07.003

本期图片

figure

图为不同分组之间微生物Shannon指数差异。

结果展示

result1

示例数据和代码领取

点赞在看 本文,分享至朋友圈集赞20个保留30分钟,截图发至微信mzbj0002领取。

「木舟笔记2022年度VIP可免费领取」

木舟笔记2022年度VIP企划

「权益:」

  1. 「2022」年度木舟笔记所有推文示例数据及代码(「在VIP群里实时更新」)。
    data+code
  2. 木舟笔记「科研交流群」
  3. 「半价」购买跟着Cell学作图系列合集(免费教程+代码领取)|跟着Cell学作图系列合集

「收费:」

「99¥/人」。可添加微信:mzbj0002 转账,或直接在文末打赏。

绘制

# Load package
library(ggplot2)
library(tidyverse)
library(plyr)
library(ggbeeswarm)
library(ggsignif)
# create data
data <- data.frame(
  Ctrl = abs(rnorm(100,4.5,0.3)),
  CD = abs(rnorm(100,4,0.3)),
  UC =abs(rnorm(100,4.2,0.5))
)
head(data)
# wide to long
dt_long <- gather(data,group,value)
head(dt_long)
str(dt_long)
dt_long$group <- factor(dt_long$group,levels = c('Ctrl','CD','UC'))
#+++++++++++++++++++++++++
# Function to calculate the mean and the standard deviation for each group
#+++++++++++++++++++++++++
# data : a data frame
# varname : the name of a column containing the variable to be summariezed
# groupnames : vector of column names to be used as grouping variables
data_summary <- function(data, varname, groupnames){
  summary_func <- function(x, col){
    c(mean = mean(x[[col]], na.rm=TRUE),
      sd = sd(x[[col]], na.rm=TRUE))
  }
  data_sum<-ddply(data, groupnames, .fun=summary_func,
                  varname)
  data_sum <- rename(data_sum, c("mean" = varname))
  return(data_sum)
}
dt_sum <- data_summary(dt_long, varname="value",groupnames="group")
head(dt_sum)
# draw
ggplot() + 
  geom_bar(dt_sum,mapping = aes(x=group, y=value, fill=group),
           stat="identity",width=.6,alpha = 0.5,position=position_dodge()) +
  geom_errorbar(dt_sum,mapping = aes(x=group, y=value,ymin=value-sd, ymax=value+sd), 
                width=.4,position=position_dodge(.8)) +
  geom_beeswarm(dt_long,mapping = aes(x=group, y=value, fill=group),
              shape = 21,color = 'black',size = 3.5,cex = 1.2,stroke = 0.6)+
  geom_signif(dt_long,mapping = aes(x=group, y=value),
              comparisons = list(c("Ctrl","CD"),c("Ctrl","UC")),
              test = "t.test",
              step_increase = 0.2,
              tip_length = 0,
              textsize = 6,
              size = 1,
              map_signif_level = T)+
  scale_fill_manual(values=c('#73bbaf','#d15e67','#6c43a6'))+
  scale_y_continuous(expand = c(0,0),limits = c(0,6.5))+
  labs(x = "", y = "Shannon index")+
  theme_classic()+
  theme(axis.line.x=element_line(color="black",size=0.8),
        axis.line.y=element_line(color="black",size=0.8),
        axis.ticks.x=element_line(color="black",size=0.8),
        axis.ticks.y=element_line(color="black",size=0.8),
        axis.text.x = element_text(color="black",size=14),
        axis.title.y=element_text(color="black",size=14))
ggsave('bar_errorbar_point.pdf',width = 5,height = 6)

result1

往期内容

  1. 即将满员!CNS图表复现|生信分析|R绘图 资源分享&讨论群!(内附推文合集)
  2. 跟着 Nature Communication 学作图 | 热图+格子注释(通路富集相关)
  3. 跟着 Nature Communication 学作图 | 百分比堆积柱状图+卡方检验
  4. ggbiplot | 带箭头的主成分分析(PCA)图绘制
相关文章
|
机器学习/深度学习
这图怎么画| 相关性热图+柱状图
这图怎么画| 相关性热图+柱状图
138 0
R实战 | 对称云雨图 + 箱线图 + 配对散点 + 误差棒图 +均值连线
R实战 | 对称云雨图 + 箱线图 + 配对散点 + 误差棒图 +均值连线
1497 1
R实战 | 对称云雨图 + 箱线图 + 配对散点 + 误差棒图 +均值连线
|
数据可视化
R语言绘图教程丨Nature论文都在用的多组比较箱线图,自动计算显著性并标注,附带误差线
R语言绘图教程丨Nature论文都在用的多组比较箱线图,自动计算显著性并标注,附带误差线
|
7月前
R语言中绘制箱形图的替代品:蜂群图和小提琴图
R语言中绘制箱形图的替代品:蜂群图和小提琴图
|
7月前
|
数据可视化
绘制GGPLOT2双色XY区间面积图组合交叉折线图数据可视化
绘制GGPLOT2双色XY区间面积图组合交叉折线图数据可视化
|
7月前
|
数据可视化 定位技术 网络架构
R语言在地图上绘制月亮图、饼状图数据可视化果蝇基因种群
R语言在地图上绘制月亮图、饼状图数据可视化果蝇基因种群
|
7月前
r语言ggplot2误差棒图快速指南
r语言ggplot2误差棒图快速指南
|
数据挖掘 数据处理
这图怎么画| 还是热图(免疫治疗反应预测)
这图怎么画| 还是热图(免疫治疗反应预测)
89 0
如何用ggplot2绘制基因功能富集气泡图?
如何用ggplot2绘制基因功能富集气泡图?
|
数据可视化 数据挖掘
热图的基础绘制(Matlab代码实现)
热图的基础绘制(Matlab代码实现)
270 0