通过计算 R 中两列值之间的百分比值在条形图标签上添加百分号标签

Add percentage sign labels on bargraph labels by calculating percentage value between two column values in R

我有一个如下所示的数据框:

year <- c("2015", "2016", "2017", "2018")
malaria_mortality <- c(25, 30, 35, 40)
malaria_discharge <- c(155, 340, 550, 160)

fatality <- data.frame(year, malaria_mortality,malaria_discharge )

我想通过计算 疟疾死亡率列 的值与 疟疾排放列 的值来生成百分比比例,我通过这样做来实现这个:

fatality$case_fatal <- round((fatality$malaria_mortality/fatality$malaria_discharge) * 100, 2)

然后我继续生成如下图

p <-ggplot(fatality, aes(x=year, y=case_fatal)) +
  geom_bar(stat="identity", fill="steelblue")+
  theme_minimal() +
  labs(title="Case Fatality ") +
  geom_text(aes(label=case_fatal), vjust=1.6, color="white",
            position = position_dodge(0.9), size=3.5)

p

一切正常,但是,如何在条形图标签中添加百分号(%)。任何在条形标签上添加百分号的帮助将不胜感激

正如@Mohanasundaram 在评论中所说,您可以使用 paste0"%" 或任何其他符号来添加到您的标签中,如下所示:

library(tidyverse)
p <-ggplot(fatality, aes(x=year, y=case_fatal)) +
  geom_bar(stat="identity", fill="steelblue")+
  theme_minimal() +
  labs(title="Case Fatality ") +
  geom_text(aes(label=paste0(case_fatal, "%")), vjust=1.6, color="white",
            position = position_dodge(0.9), size=3.5)

p

输出: