2014-06-25 13 views
5

Ho una cornice dati contenente variabili ed è conf. intervalloCome evidenziare l'area tra due linee? ggplot

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 

I ggplot esso:

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

voglio evidenziare area tra la linea rossa e blu, smth simile a geom_smooth() funzione. Come posso farlo?

risposta

15

Un geom_ribbon è esattamente quello che ti serve

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

+0

sei il mio salvatore oggi :) – BiXiC

+0

Potrebbe aggiungere una legenda per identificare il colore delle linee blu e rosso? – dca

Problemi correlati