R:ggplot2 条形图和误差条 [英] R: ggplot2 barplot and error bar

查看:48
本文介绍了R:ggplot2 条形图和误差条的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

自从 ggplot2 (0.9.3) 的新版本以来,我在绘制带有误差条的条形图时遇到了问题.所以我有一个这样的数据框:

Since the new version of ggplot2 (0.9.3), I've problem to plot barplots with errorbars. So I've a dataframe like this :

    group N        val         sd         se         ci
1     206 3 37.2269533  7.9688645  4.6008261 19.7957568
2     207 3  2.0731505  2.2843009  1.3188417  5.6745180
3     208 3  2.2965978  1.4120606  0.8152536  3.5077531
4     209 3  3.1085132  1.1986664  0.6920504  2.9776525
5     210 3  3.3735251  1.9226134  1.1100214  4.7760365
6     211 3  4.0477951  2.9410503  1.6980162  7.3059739
7     212 3  1.2391158  1.2345554  0.7127709  3.0668055
8     213 2  1.3082374  1.1234220  0.7943793 10.0935460

我想为每个组绘制 val +- s :我在升级之前这样做了:

I want to plot for each group the val +- s : I did that before upgrade :

ggplot(dfc, aes(x=factor(group), y=factor(val)) +  geom_bar(position=position_dodge()) + geom_errorbar(aes(ymin=val-se, ymax=val+se),width=.1,position=position_dodge(.9))

它给了我:

将变量映射到 y 并使用 stat="bin".使用 stat="bin" 时,它将尝试将 y 值设置为每组中的案例数.这可能会导致意外行为,并且在 ggplot2 的未来版本中将不被允许.如果您希望 y 表示案例计数,请使用 stat="bin" 并且不要将变量映射到 y.如果您希望 y 表示数据中的值,请使用 stat="identity".有关示例,请参阅 ?geom_bar.(已弃用;最后使用于 0.9.2 版)

Mapping a variable to y and also using stat="bin". With stat="bin", it will attempt to set the y value to the count of cases in each group. This can result in unexpected behavior and will not be allowed in a future version of ggplot2. If you want y to represent counts of cases, use stat="bin" and don't map a variable to y. If you want y to represent values in the data, use stat="identity". See ?geom_bar for examples. (Deprecated; last used in version 0.9.2)

所以有人知道如何解决吗?谢谢

So anyone knows how to resolve that ? Thanks

否.

推荐答案

这就是你想要的吗?

my.df <- read.table(text = "group N        val         sd         se         ci
206 3 37.2269533  7.9688645  4.6008261 19.7957568
207 3  2.0731505  2.2843009  1.3188417  5.6745180
208 3  2.2965978  1.4120606  0.8152536  3.5077531
209 3  3.1085132  1.1986664  0.6920504  2.9776525
210 3  3.3735251  1.9226134  1.1100214  4.7760365
211 3  4.0477951  2.9410503  1.6980162  7.3059739
212 3  1.2391158  1.2345554  0.7127709  3.0668055
213 2  1.3082374  1.1234220  0.7943793 10.0935460", header = TRUE)

ggplot(my.df, aes(x = factor(group), y = val)) +  
  geom_bar(position = position_dodge()) + 
  geom_errorbar(aes(ymin=val-se, ymax=val+se))

这篇关于R:ggplot2 条形图和误差条的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆