首页 > 解决方案 > 如何在 ggplot2 的条形图上同时显示计数和百分比?R

问题描述

这是我的数据

data <- data.frame("Name" = c("Mark", "Jenny", "Linn"),
                   "Freq" = c("5","7", "3"),
                   "Percent" = c("33%", "47%", "20%"))

这是我的阴谋

ggplot(data, aes(x=Name, y=Freq)) + 
  geom_bar(stat="identity", color = "black", fill="dodgerblue1")+
  geom_text(label=data$Freq, vjust=-1)

我怎样才能将我的百分比标签放在我的频率标签旁边,最好放在括号中或用逗号分隔?

标签: rggplot2

解决方案


用 组成文本标签paste/paste0

ggplot(data, aes(x = Name, y = as.numeric(Freq))) + 
  geom_bar(stat = "identity", color = "black", fill = "dodgerblue1")+
  geom_text(label = with(data, paste(Freq, paste0('(', Percent, ')'))), vjust=-1) +
  ylim(0, 8)

在此处输入图像描述


推荐阅读