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

时间:2014-06-25 22:21:48

标签: 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

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()

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

1 个答案:

答案 0 :(得分:17)

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()

enter image description here