如何解决ggplot2,并排和比例填充
我有如下数据:
我的目标是建立一个如下的条形图网格:每个图将特定于1个race_ethnicity组。每个图中的x轴将是不同的age_bin组。对于每个age_bin,都有两个小节:男性1个,女性1个。对于每个小节,我希望它用“可能//(不太可能+可能)”的比例填充。最好,每个条形的高度为1,并有一条直线穿过它,因此该条形的可能百分比是带有标签的一种颜色。这是我目前拥有的:
我遇到的问题是:1)使用预定比例作为填充,以及2)具有两种不同的“填充”(一种用于生物性别,一种用于预定比例)。
感谢任何可以帮助您的人。我的代码当前如下:
ggplot(data=who_Votes_data,aes(x=age_bin,y=1,fill=gender)) +
geom_bar(stat='identity',aes(fill = gender),position = position_dodge2()) +
facet_wrap(~race_ethnicity,nrow = 2,scales = "free") +
geom_text(aes(label=paste0(sprintf("%1.1f",proP*100),"%"),y=prop),colour="white") +
labs(x = expression("Age Group"),y= ("Prortion of Likely Voters"),title = "Proportion of Likely Voters Across Age Groups,Race/Ethnicity,and Sex",caption="figure 1") + theme(plot.caption = element_text(hjust = 0.5,vjust = -0.5,size = 18))
https://docs.google.com/spreadsheets/d/1a7433iwXNSwcuXDJOvqsxNDN6oaYULVlyw22E41JROU/edit?usp=sharing
更新代码:
library(tidyverse)
library(ggplot2)
df<- read.csv("sampleVotes.csv")
df %>%
group_by(race_ethnicity,age_bin,gender) %>%
summarise(Likely = sum(Likely),Unlikely = sum(Unlikely),proportion = Likely/(Likely+Unlikely)) %>% ungroup() %>%
ggplot(aes(x = age_bin,y = proportion,fill = gender)) +
geom_bar(stat = "identity",position = "dodge") +
facet_wrap(~race_ethnicity,nrow = 2) +
geom_text(aes(label=paste0(sprintf("%1.1f",proportion*100),y=proportion),position = position_dodge(width = 1),colour="Black",size = 2.2) +
labs(x = expression("Age Group"),y= ("Proportion of Likely Voters"),caption="figure 1") +
theme(plot.caption = element_text(hjust = 0.5,size = 18))
解决方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。