繁体   English   中英

在ggplot2中,如何制作跨因子比例的条形图(并添加误差条)?

[英]In ggplot2, how can I make a bar chart of proportions across factors (and add error bars)?

我正在努力制作一个变量在ggplot中的一个因子的比例图。

mtcars数据为例,从这个问题中窃取部分解决方案,我可以想出来

ggplot(mtcars, aes(x = as.factor(cyl))) +  
  geom_bar(aes(y = (..count..)/sum(..count..))) + 
  scale_y_continuous(labels = percent_format())

该图给出了整个数据集中每个cyl类别的比例。

我想得到的是每个cyl类别中具有自动变速器(二进制变量am )的汽车比例。

在每个栏的顶部,我想为比例添加一个错误栏。

是否可以只使用ggplot 或者我是否必须首先使用摘要准备数据框并将其与条形图的identity选项一起使用?

我在Cookbook for R网页上找到了一些例子,但它们处理的是连续的y变量。

我认为制作新数据框然后将其用于绘图会更容易。 在这里,我计算了比例和下限/上限置信区间值(从prop.test()结果中获取)。

library(plyr)
mt.new<-ddply(mtcars,.(cyl),summarise,
      prop=sum(am)/length(am),
      low=prop.test(sum(am),length(am))$conf.int[1],
      upper=prop.test(sum(am),length(am))$conf.int[2])

ggplot(mt.new,aes(as.factor(cyl),y=prop,ymin=low,ymax=upper))+
  geom_bar(stat="identity")+
  geom_errorbar()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM