r - 在 ggplot2 我的百分比标签没有正确放置
问题描述
我正在尝试在我的 100% 堆叠条形图上标注百分比(见图)。我计算下面第一个块中的百分比,然后运行我的 ggplot。你知道我做错了什么吗,为什么我的百分比会这样显示?
library(scales)
percentData = surveyds %>%
group_by(qtext, X_Gender, response) %>%
summarise(N = n()) %>%
mutate(prop = N/sum(N))
percentData$prop = label_percent(accuracy = 1)(percentData$prop) #make percent from decimal
surveyds$responsef = factor(
surveyds$response,
levels = c("Poor","Fair","Good","Very good", "Excellent"),
ordered = TRUE
) #Order bars
#Run visual
ggplot(data =subset(surveyds, !is.na(responsef)))+ #responsef is my response factored
geom_bar(aes(x = X_Gender, fill = responsef), position = 'fill', width = 0.5)+
facet_grid(rows = vars(qtext))+ #qtext is my question text
coord_flip()+
ylab('Proportion')+
xlab('question')+
ggtitle('Change')+
geom_text(data = percentData, aes(y = N, label = prop, x = X_Gender),
position=position_fill(vjust=0.5))
解决方案
我想到了。需要向我的 geom_text 添加一个填充参数。
geom_text(data = percentData, aes(fill = responsef, y = N, label = prop, x = X_Gender,),
position=position_fill(vjust=0.5))
推荐阅读
- flutter - 如何在 Flutter 的 CustomScrollView 中拥有 ListView.builder(大列表)?
- pandas - 通过将文件名与部分列值匹配,用列值覆盖 fasta 文件的标题
- javascript - React Native:无法导航到“Login.js”屏幕
- c# - 如何通过html敏捷包获取特定的表格数据
- firebase - 通过电子表格将谷歌表单同步到 Firebase
- r - 在 R 数据框中提取具有共同值的行
- webpack - Webpack url 图像不会显示在 dev-server localhost 中
- android - 获取结果 - Kotlin startActivityForResult 不提供任何结果
- vb.net - 如何在搜索文本框中选择具有特定值/行的数据?
- azure - Azure DevOps 管道触发变量