我在创建比例条形图时遇到问题。
这是我目前的代码:
ggplot(data = d,
aes(fill = version)) +
theme(legend.position = 'bottom') +
geom_bar(aes(x = cregion,
y = ..count../sum(..count..)),
position = 'dodge') +
scale_y_continuous(labels = percent) +
coord_flip()
产生这个:
这会缩放条形,使总和为100%。我想要的是鲑鱼条总和达到100%,而且水银条总和达到100%。换句话说,我对在缩放中的比例感兴趣。有没有办法用ggplot来做这个,除了进入我的数据并乱用我的变量?
答案 0 :(得分:0)
截至2017年3月,ggplot2 2.2.1我认为最佳解决方案在Hadley Wickham的R for data science book中有所解释:
ggplot(data = d,aes(x=cregion)) +
stat_count(aes(y=..prop.., group=version, fill = version, position = "dodge"))+
theme(legend.position = "bottom")+
scale_y_continuous(labels = percent) +
coord_flip()
stat_count计算两个变量:默认情况下使用count,但您可以选择使用显示比例的prop。
找到原始答案 Show % instead of counts in charts of categorical variables