首页 > 解决方案 > 在 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)) 

标签: rggplot2

解决方案


我想到了。需要向我的 geom_text 添加一个填充参数。

geom_text(data = percentData, aes(fill = responsef, y = N, label = prop, x = X_Gender,),
            position=position_fill(vjust=0.5))

推荐阅读