首页 > 解决方案 > 在 R 中创建一个带有 2 个条形的条形图

问题描述

我想创建一个比较 x'axis 的条形图:

这是我的数据框:

团体 EMSE_2012 EMSE_2018
自杀 16.6 21.5
索莱达 9.1 16.3
全神贯注 8.4 12.7
罪恶之友 5.5 5.2

我需要比较同一栏中的每一列,以便有 4 组 8 列。我希望清楚。

谢谢!

标签: rbar-chart

解决方案


我们可以重塑为“长”并使用ggplot

library(dplyr)
library(tidyr)
df1 %>%
    pivot_longer(cols = -group) %>%
    ggplot(aes(x = group, y = value, fill = name)) + 
      geom_col(position = 'dodge')

-输出

在此处输入图像描述

数据

df1 <- structure(list(group = c("Suicidio", "Soledad", "Preocupacion", 
"Sin Amigos"), EMSE_2012 = c(16.6, 9.1, 8.4, 5.5), EMSE_2018 = c(21.5, 
16.3, 12.7, 5.2)), class = "data.frame", row.names = c(NA, -4L
))

推荐阅读