ggplot的置信区间误差线

时间:2019-10-01 18:38:25

标签: r ggplot2

我要为ggplot放置置信区间误差线。

我有一个数据集,并使用ggplot将其绘制为:

df <- data.frame(
        Sample=c("Sample1", "Sample2", "Sample3", "Sample4", "Sample5"), 
        Weight=c(10.5, NA, 4.9, 7.8, 6.9))

p <- ggplot(data=df, aes(x=Sample, y=Weight)) + 
geom_bar(stat="identity", fill="black") + 
scale_y_continuous(expand = c(0,0), limits = c(0, 8)) + 
theme_classic() + 
theme(axis.text.x = element_text(angle = 45, hjust = 1)

p

我不熟悉添加错误栏。我使用geom_bar查看了一些选项,但无法正常工作。

对于将置信区间误差线放在小节图中的任何帮助,我将不胜感激。谢谢!

1 个答案:

答案 0 :(得分:2)

使用geom_errorbar

添加一层误差线
df <- data.frame(
  Sample=c("Sample1", "Sample2", "Sample3", "Sample4", "Sample5"), 
  Average.Weight=c(10.5, NA, 4.9, 7.8, 6.9),
  # arbitrarily make up some Standard Errors for each mean:
  SE = c(1, NA, .3, .25, .2)) # JUST MAKING THINGS UP HERE

现在您有了一个数据框,其中包含您研究中每个样本的Average WeightSE列。使用ggplot进行绘制:

ggplot(data = na.omit(df)) + #don't bother plotting the NA
  geom_bar(stat = "identity", aes(x = Sample,y = Average.Weight)) +
  geom_errorbar(
    aes(x=Sample, 
        ymin = Average.Weight - 2*SE, 
        ymax = Average.Weight + 2*SE), 
    color = "red"
  )

enter image description here