根据受访者的性别分类,我一直在寻找一种能够将堆积条形图响应显示为百分比值的方法 .
我成功地使用变量'sex'创建了一个堆积条形图用于填充,但我希望该图显示该变量之间的比例 . 我知道使用(..count ..)/ sum(.. count)和scale_y可以更改y轴,以便显示百分比,但我找不到将其用于我想要的方法 . 手动执行具有反映百分比的频率值[编辑]的单独数据框也是可能的,但我真的热衷于寻找仅使用ggplot的方法 .
This is what the plot currently looks like:
这是当前的代码:
workday<-ggplot(student,aes(x=Dalc2,fill=sex))
plot1<-workday+geom_bar()+facet_wrap(~romantic2)+labs(title="Workday Alcohol Consumption",y="Number of Respondents",x="Response")+ylim(0,300)
我知道这是一个非常基本的问题,但是对这一问题的任何启示都将非常感激 .
(来自uci.edu的数据集)
编辑:
对于那些对解决方案感兴趣的人,r.bot(非常感谢!)建议使用 geom_bar(position="fill")
同时添加此项以修改y轴: scale_y_continuous(labels=percent)
1 回答
ggplot online documentation有一个很好的叠加条形示例,达到100% . 我可以't adapt your code as you haven'吨提供数据 . 作为一个例子,请参阅
position = "fill"
应该能得到你想要的东西 .