如何在R中绘制堆积条形图

时间:2018-05-14 15:23:56

标签: r ggplot2

我使用代码dput(head(Refugees_demographics, 2))

以下是以下示例数据集:

structure(list(Year = c(2006, 2007), `Female 0-4` = c(0, 3), 
    `Female 5-11` = c(0, 0), `Female 12-17` = c(140, 36), `Female 18-59` = c(1118, 
    519), `Female 60+` = c(121, 85), `F: Total` = c(1379, 643
    ), `Male 0-4` = c(0, 7), `Male 5-11` = c(6, 1), `Male 12-17` = c(152, 
    56), `Male 18-59` = c(1323, 870), `Male 60+` = c(595, 88), 
    `M: Total` = c(2076, 1022)), row.names = c(NA, -2L), class = c("tbl_df", 
"tbl", "data.frame"))

我想获得以下叠加条形图。 (如照片)

enter image description here

x轴将是年份,y轴将是难民人数。每年会有两个堆叠的酒吧。一个用于男性,一个用于女性。在每个酒吧内,它按年龄堆积,即女性4-4岁,女性5-11岁等等。

我尝试使用以下代码,但它不起作用,我也不知道如何按年分组女性和男性。

ggplot() +
  geom_bar(aes(y = Refugees_demographics$`Female 0-4`,
               x = Refugees_demographics$Year, fill = product),
           data = Refugees_demographics, stat="identity")

如果有人可以提供帮助,我将不胜感激!

提前谢谢你。

1 个答案:

答案 0 :(得分:0)

您需要在创建视觉之前转换数据。请参阅下面的代码。这里有很多事情需要你解决。例如,我从原始数据中删除了总列数,更新了年份列,并更新了列名称。

SUM()