R中的堆叠条形图直方图

时间:2018-08-13 20:49:12

标签: r ggplot2 histogram bar-chart stacked

我想为我的数据制作一个直方图,但我也想以一种可视化的方式显示每个类别的颜色,但将它们堆叠在一起。

这是我要实现的目标:Stacked histogram from already summarized counts using ggplot2

但是我不确定如何为我的数据集做这件事,而我的R技能非常生锈。

我的数据格式如下

Name Category Age Year
1     A       3   2017
2     B       6   2016
3     B       12  2017
4     B       8   2017

我只对类别B感兴趣,所以我制作了一个名为catB的子集。我希望直方图绘制不同年龄段的频率,并希望根据年份为堆栈着色(在我的数据中有5年选项)。

我将不胜感激!谢谢!

2 个答案:

答案 0 :(得分:0)

ggplot(catB, aes(x = Age, fill = Year)) +
  geom_histogram()

答案 1 :(得分:0)

一个更好的图形选项。您必须添加频率(计数):在示例中给定为count = 1。但是,您必须在真实数据上看到什么是计数值:

catB <- cbind(catB, count=1)
ggplot(catB, aes(x=Age, y=count)) + geom_histogram(aes(fill=Year), stat="identity", group=1)