多个类别条形图

时间:2017-02-12 20:45:31

标签: r

我正在使用与此类似的数据集:

Year Guild Habitat Count
2008 C     P       2
2008 F     P       12
2008 I     P       14
2008 C     S       1
2008 F     S       25
2008 I     S       12
2011 C     P       1
2011 F     P       14
2011 I     P       20
2011 C     S       1
2011 F     S       30
2011 I     S       12

我想创建一个条形图like this one I've crudely drawn,因为我不能让它看起来像R上的任何类似的东西。

我已经设法制作了一年的正确图表,但即使这样我也必须更改数据,因此看起来像这样:

enter image description here

Guild Habitat
C     P
C     P
F     P
F     P
F     P
...   ...

我手工做了。显然,有一种更好的方法可以做到这一点。 实际数据有超过3个公会,比较超过2年。

总结一下:

1)您如何绘制具有多个类别的条形图?

2)如何让R从表中读取频率计数?

1 个答案:

答案 0 :(得分:1)

假设您有一个数据框dataset,其结构与问题中的结构相同,则可以使用ggplot2来完成绘图。网上有ggplot2的大量教程和文档,例如this one

library(ggplot2)
dataset %>% 
  ggplot(aes(Guild, Count)) + 
  geom_col(aes(fill = Habitat), position = "dodge") + 
  theme_bw() + 
  facet_wrap(~Year)

在英语中,这表示:"绘图计数与公会作为柱形图,按栖息地填充列颜色,并排放置列(闪避)并按年份(facet)将图表放置在自己的容器中。&# 34;多年后,您需要尝试facet_wrapfacet_grid

结果:enter image description here