2016-03-18 15 views
1

Ich habe eine einfache Handlung:Add Schattierung R Basis Grundstück

x1<- sort(rnorm(100)) 
x_max <- x1-0.5 
x_min <- x1+0.5 

plot(x1,type='l') 
points(x_max,type='l',col="red") 
points(x_min,type='l',col="red") 

I graue Schattierung zwischen den beiden roten Linien hinzufügen möchte.

Ich bin auf der Suche nach einer Lösung, die die grundlegende R-Plotting-Funktion von R und nicht ggplot verwendet.

+3

Versuchen 'Polygon Tweaking (c (1: 100.100: 1), c (x_min, rev (x_max)), col = "# eeeeeeaa")' – ekstroem

+0

Dank, das funktioniert perfekt. Fühlen Sie sich frei, es als Antwort hinzuzufügen, damit ich es annehmen kann. – user1723765

Antwort

3

Sie können versuchen, polygon zu verwenden. Wenn Sie die Farbe für das Polygon mit einem Alpha-Kanal festlegen, überschreiben die Dinge nichts. Fügen Sie auch den Vorschlag von @raw hinzu, um panel.first zu verwenden.

x1 <- sort(rnorm(100)) 
x_max <- x1-0.5 
x_min <- x1+0.5 

plot(x1, type = 'l', panel.first = polygon(c(1:length(x1),length(x1):1), c(x_min, rev(x_max)), col="#eeeeeeaa", border = NA)) 
points(x_max,type='l',col="red") 
points(x_min,type='l',col="red")