2016-05-31 14 views
2

Ich versuche, ein Zeitreihendiagramm mit einer Polygonfunktion zwischen den beiden blauen Linien einzufärben, wie unten gezeigt.So markieren Sie den Konfidenzbereich der Zeitreihenvorhersage mit einem Polygon

Mein Code ist wie folgt: enter image description here

-Code für obige Grafik zu erzeugen, wie folgt:

set.seed(2) 
Original <- ts(na.omit(rnorm(1:96,mean=20, sd=1)), frequency = 12, start=c(2008,1)) 
upper <- ts(na.omit(rnorm(1:96,mean=30, sd=1)), frequency = 12, start=c(2015,1),end=c(2015,12)) 
lower <- ts(na.omit(rnorm(1:96,mean=10, sd=1)), frequency = 12, start=c(2015,1),end=c(2015,12)) 
predict <- ts(na.omit(rnorm(1:96,mean=18, sd=1)), frequency = 12, start=c(2015,1),end=c(2015,12)) 

par(mfrow=c(1,1)) 
plot(Original,type="l",col="gray", ylim=c(0,50)) 
lines(upper,col="blue") 
lines(lower,col="blue") 
lines(predict,col="red", lwd="2")    

Die Polygon-Funktion, die ich bin derzeit mit sich wie folgt:

polygon(x= c(tmp,rev(tmp)),y= c(upper,rev(lower)), col="grey", border=NA) 

Der obige Code ist gut, mit Ausnahme meiner X-Koordinaten. Ich kann die X-Koordinate nicht angeben, da es sich um eine Zeitreihe handelt. Die Zeitreihe ist monatlich. The Blue Line beginnt im Januar 2015 und endet im Dezember 2015.

Gibt es eine Möglichkeit, die "X" -Koordinaten für Zeitreihen in einem Vektor/Matrix/date.frame zwischen Januar 2015 und Dezember 2015 anzugeben ?

Mein ZIEL: Ich möchte den Bereich zwischen den zwei blauen Linien und nur zwischen den beiden blauen Linien einfärben. Daher die Verwendung von Polygon.

+0

Hallo Zheyuan Li, ich beabsichtige, den Bereich zwischen den beiden blauen Linien so zu färben, ich möchte die Polygon-Funktion verwenden. Ich habe den Code für Ihr Verständnis/Studien hochgeladen. – Seb

Antwort

1

OK, Ihre Frage ist wirklich: Wie kann ich den entsprechenden Wert der Variablen tmp in meinem Anruf an polygon erhalten.

Nun, versuchen Sie dies einfach:

tmp <- seq(from = 2015, by = 1/12, length = 12) 
polygon(x= c(tmp,rev(tmp)),y= c(upper,rev(lower)), col="grey", border=NA) 

enter image description here

Aber Sie können es selbst tun, um die Handlung zu machen schöner aussehen, z.B. Ändern der Linienfarben, Linienbreite. Außerdem müssen Sie möglicherweise zuerst das Polygon zeichnen und dann Ihr Zeitreihendiagramm überlagern.

+0

Danke Chef. Du bist ein Guru :) – Seb