如何从R中的数据子集创建两个并排图?

时间:2019-04-10 19:02:48

标签: r ggplot2 histogram

我有一个大的数据框,该框基本上是按年份划分的(即有2004和2005的数据),我希望用2004和2005的数据创建两个并排的直方图。

我已经用两个年份的数据创建了一个直方图,但是我很难根据年份来分离它。

library(ggplot2)
NextRatings <- read.csv("DataSet.csv", header = TRUE)

line <- ggplot(NextRatings, aes(x=rating.avg)) + 
           geom_histogram(aes (y = ..density..), binwidth = .5, colour = "black", fill = "white") + 
           geom_density(alpha = .2, colour = "blue")

这是生成两个年份直方图的代码,但是我不知道如何根据年份将它们分成两个直方图。

1 个答案:

答案 0 :(得分:1)

您要寻找的功能是facet_wrap

创建一些虚拟数据:

NextRatings <- data.frame(year = rep(c(2001, 2019), 500),
                          rating.avg=rnorm(500))

line <- ggplot(NextRatings, aes(x=rating.avg)) + 
  geom_histogram(aes (y = ..density..), binwidth = .5, 
                 colour = "black", fill = "white") + 
  geom_density(alpha = .2, colour = "blue") + 
  facet_wrap("year")
line

enter image description here