R语言绘制带误差线的柱形图

什么是带误差线的柱形图?

  • 柱子的高度:显示每个类别的均值或其他统计量。

  • 误差线的长度:显示该统计量的变异性(通常为标准误差或标准差)。较长的误差线表示该类别的统计量不那么稳定或精确,较短的误差线表示更精确的估计。

带误差线的柱形图不仅提供了每个类别的均值,还通过误差线展示了数据的变异性,帮助我们更全面地理解数据的可靠性和各类别之间的差异。这种图形特别适用于比较不同组的均值,并展示其统计意义。

绘图所需的数据

​demo数据可以在https://www.r2omics.cn/res/demodata/boxplot.txt下载。

第一列为名称列,其他列为数据列。

如果是转录组蛋白组等生物学数据,则每一列代表一个样本,每一行代表一个基因。

R语言绘制带误差线的柱形图

# 来源 https://www.r2omics.cn/
library(tidyverse)
# 读取数据文件
df = read.delim("https://www.r2omics.cn/res/demodata/errorBar.txt") # 将此处换成你自己电脑里的文件

# 计算均值和标准误差
summary_data <- df %>%
  pivot_longer(-1,names_to = "Sample",values_to = "Value") %>%
  group_by(Sample) %>%
  drop_na() %>%  # 去除NA
  summarise(
    mean = mean(Value),        # 计算平均追
    se = sd(Value) / sqrt(n()) # 计算标准误
  )

# 绘制带误差条的柱形图
ggplot(summary_data, aes(x = Sample, y = mean)) +
  geom_errorbar(aes(ymin = mean - se, ymax = mean + se), width = 0.2) +  # 添加误差条
  geom_bar(stat = "identity", fill = "skyblue", width = 0.6) +           # 创建柱形图
  theme_minimal() +  # 设置简洁主题
  labs(title = "Bar Plot with Mean and Error Bars", x = "Sample", y = "Mean Value")