我正在尝试在每个条形图上方创建误差条,但是我有三组条形图和6条形图并且它相对于每个组定位误差条,但我想要定位每个错误每个酒吧上方的酒吧。这是我的数据:
NewData
Group Session HeartRate StdError n sd
1 Novices one 71.89276 1.821146 29 9.807170
2 Experts one 66.40705 1.923901 26 9.810008
3 Novices two 71.38609 1.571261 29 8.011889
4 Experts two 67.79910 1.788151 26 9.117818
5 Novices three 71.79759 1.941730 29 10.456534
6 Experts three 67.04564 1.938620 26 9.885061
这是我的代码:
plot_2 = ggplot(NewData, aes(x=Session, y=HeartRate, fill=Group)) +
theme_bw() +
geom_bar(position="dodge",stat="identity")+
scale_x_discrete(limits=c("one","two","three")) +
coord_cartesian(ylim = c(50, 80)) +
geom_errorbar(aes(ymin=HeartRate-StdError,ymax=HeartRate+StdError),position="dodge",width=.25)
这是输出:http://i.imgur.com/BrLB6Px.png
任何帮助将不胜感激。谢谢!
好的 - 我找到了一个解决方案,不确定它是如何工作或为什么工作,但这是我的新代码:
dodge <- position_dodge(width=0.9)
plot_2 = ggplot(NewData, aes(x=Session, y=HeartRate, fill=Group)) +
geom_bar(position=dodge)+
scale_x_discrete(limits=c("one","two","three")) +
coord_cartesian(ylim = c(50, 80)) +
geom_errorbar(aes(ymin=HeartRate-StdError,ymax=HeartRate+StdError),position=dodge,width=.25)
这是理想的结果:http://i.imgur.com/PodCeh5.png
答案 0 :(得分:0)
很难说你希望看到什么是输出,但从我收集的内容来看,也许这会做你想要的?
geom_errorbar(aes(ymin=HeartRate,ymax=HeartRate+StdError*2),position="dodge",width=.25)
如果要沿x轴移动误差条,我们需要修改position = dodge。我没有看到太多的文档,但你可能会尝试类似......
geom_errorbar(aes(ymin=HeartRate-StdError,ymax=HeartRate+StdError),position=group-10,width=.25)
或
geom_errorbar(aes(ymin=HeartRate-StdError,ymax=HeartRate+StdError),position=Session-10,width=.25)
或者(很可能?)这个:
geom_errorbar(aes(ymin=HeartRate-StdError,ymax=HeartRate+StdError),position=x-10,width=.25)