使用facet_wrap和ggplot2绘制每个方面内的整个数据

drm*_*iod 8 r ggplot2

我正在尝试facet_wrap为每个数据集绘制线图.我希望拥有的是浅灰色,透明或其他东西,背景中的所有数据集.

df <- data.frame(id=rep(letters[1:5], each=10),
                 x=seq(10),
                 y=runif(50))

ggplot(df, aes(x,y, group=id)) + 
  geom_line() + 
  facet_wrap(~ id)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

这个图表是我得到了多远,但我希望每个图表中还有其他所有缺失的4行...我试图使用的任何方式facet_wrap,我只得到一行的数据.

对于每个方面,我期望的是这样的事情.

ggplot(df, aes(x,y, group=id)) + 
  geom_line() + 
  geom_line(data=df[1:10,], aes(x,y, group=id), size=5)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

bee*_*oot 12

这是另一种方法:

首先添加一个与id相同的新列:

df$id2 <- df$id
Run Code Online (Sandbox Code Playgroud)

然后geom_line根据没有原始id列的df 添加另一个:

ggplot(df, aes(x,y, group=id)) + 
  geom_line(data=df[,2:4], aes(x=x, y=y, group=id2), colour="grey") +
  geom_line() + 
  facet_wrap(~ id)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述