2013-07-04 7 views
5

Ich versuche, die X-Achse meiner Zeitreihe Grundstück zu erweitern später für das Hinzufügen von neuen Daten in die Handlung vorbereitet werden. Doch was auch immer ich versuche, erhalte ich die Fehler in plot.window (...): ungültig ‚Xlim‘ Wert Fehler.R Einstellung Xlim in xts Grundstück

Hier ist ein minimaler Code-Schnipsel:

Daten Konstruktion:

time_series <- xts(rnorm(100),seq(as.POSIXct("2012-01-01 00:00:00"), as.POSIXct("2012-01-05 03:00:00"), by="hour")) 

Plotten:

plot(time_series, type='l'); 

Das Ergebnis ist, wie erwartet, eine schöne Zeitreihe Grundstück.

Jetzt wollte ich die x-Achse erweitern und ich versuchte:

xlim <- seq(as.POSIXct("2012-01-01 00:00:00"), as.POSIXct("2012-01-06 03:00:00"), by="hour") 
plot <- (time_series, xlim = xlim, type='l') 

aber dies nicht funktioniert, aber Ergebnisse in Fehler in plot.window (...): ungültig 'Xlim' value.

Der Versuch, die folgenden Ergebnisse in den gleichen Fehler:

xlim <- c(as.POSIXct("2012-01-01 00:00:00"), as.POSIXct("2012-01-05 00:00:00")) 

Aus der Dokumentation Ich weiß, dass Xlim numerisch sein und kann wie Xlim = c (0.100) eingestellt werden, aber wie funktioniert es, wenn xts mit Daten?

Bearbeiten: Ich weiß, dass diese Frage der Frage Time series plot range ähnlich ist. Da ich jedoch die Daten, die in Zukunft geplant werden müssen, nicht kenne, interessiert mich diese spezielle Lösung.

+2

ich nicht vertraut bin 'plot.xts', aber' xlim' in Basis Grafiken ist in der Regel ein Vektor mit genau zwei Werten (min und max) und nicht eine Folge. – Roland

+0

hätte ich erwähnt, dass ich auch versucht, einen Vektor, der max POSIXct Werte mischen. Entschuldigung, ich werde das zu meiner Frage hinzufügen. – user1356695

+0

Im Allgemeinen Ich schlage vor, mit 'plot.zoo' oder' xtsExtra :: plot.xts' – GSee

Antwort

5

So:

plot(time_series, type='l', 
    xlim=as.POSIXct(c("2012-01-01 00:00:00","2012-01-06 03:00:00"))) 
+0

Okay, es funktioniert auf jeden Fall. Ich bin nicht sicher, warum ich überzeugt war, dass es nicht tut - Entschuldigung. Leider scheint Achsenlabel in der Handlung zu fehlen, aber das ist etwas, womit ich leben kann. – user1356695

0

Oder Sie machen eine Teilmenge in xts vor: df2.xts < -df.xts [ "2012-01-01/2012-02-01"] und dann Plot (df2.xts).