0

我有问题。我将标准误差(se)用于我的误差线。我的误差线远高于我的误差线,我已经尝试将 ymin 和 ymax 放在 ggplot 本身中,但没有任何效果。

我的数据框如下所示:

  ID variable        se
1 A  14.340695 0.7917790
2 B  32.506312 0.9092173
3 C  7.279953 0.0444325

我使用了以下代码:

df$variable=as.numeric(as.character(df$variable))
limits<-aes(ymin=df$variable - df$se, ymax=df$variable + df$se)
r<-ggplot(df, aes(x=ID, y=factor(variable), fill=variable)) 
r + geom_bar(position=position_dodge(), stat="identity") + geom_errorbar(limits)

我不知道为什么 error_bars 的位置最终比条本身高得多。

我会感谢您的帮助,非常感谢!

4

1 回答 1

0

似乎将 y 设置为因子。如果删除它,它会起作用:

ggplot(df, aes(x=ID, y=variable, fill=variable)) + 
  geom_bar(stat="identity") +
  geom_errorbar(aes(ymin=variable-se, ymax=variable+se))
于 2016-08-04T10:48:13.400 回答