如何突出两行之间的区域?ggplot

BiX*_*XiC 7 r ggplot2

我有包含变量的数据框,它是conf.间隔

time x     x.upper   x.lower
   1 1.00     0.91      1.11
   2 1.03     0.92      1.13
   3 1.03     0.95      1.17
   2 1.06     0.90      1.13
Run Code Online (Sandbox Code Playgroud)

ggplot:

library(ggplot2)
ggplot(data = df,aes(time,x))+
    geom_line(aes(y = x.upper), colour = 'red') +
    geom_line(aes(y = x.lower), colour = 'blue')+
    geom_line()
Run Code Online (Sandbox Code Playgroud)

我想突出红线和蓝线之间的区域,smth类似于geom_smooth()功能.我该怎么做?

MrF*_*ick 17

A geom_ribbon正是您所需要的

ggplot(data = df,aes(time,x))+
    geom_ribbon(aes(x=time, ymax=x.upper, ymin=x.lower), fill="pink", alpha=.5) +
    geom_line(aes(y = x.upper), colour = 'red') +
    geom_line(aes(y = x.lower), colour = 'blue')+
    geom_line()
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述