[R] Problem on plotting TS using GGPLOT

Gabor Grothendieck ggrothendieck at gmail.com
Fri Sep 25 15:49:14 CEST 2009


First get the correct representation which here would be a multivariate
zoo series with 51 time points and 6 components series and then plot it
using zoo's plot function:

z <- zoo(matrix(dat, 51), time(dat2))

# all in one panel
plot(z, pch = letters[1:6], screen = 1, type = "b", col = 1:6)

# or in separate panels (same but omit screen = 1)
plot(z, pch = letters[1:6], type = "b", col = 1:6)

There are many examples of plotting zoo series in the 3 vignettes that
come with zoo and also in ?plot.zoo and ?xyplot.zoo

If you wish to use ggplot2 you can extract the data and times
into a new data frame and use that data frame for further computation.

DF <- cbind(tt = time(z), as.data.frame(z))


On Fri, Sep 25, 2009 at 9:32 AM, Bogaso <bogaso.christofer at gmail.com> wrote:
>
> Thanks for this reply. Here my goal is to plot multiple time series in the
> same plotting window. Here y variable has 306 elements, however each value
> is associated with factor which is represented by "vv" variable.
>
>  I want to plot total 6 time series, for example 1st 51 values of y,
> represented by "a" should be treated as single TS, with index as index of
> "dat2".....................similarly 2nd 51 values of y, represented by "b"
> should be treated as another single TS, with index as index of
> "dat2"...........and so on.
>
> What is the problem here?
>
> Thanks,
>
>
>
> ONKELINX, Thierry wrote:
>>
>>
>> You are mixing data from two datasets with different lengths. Your x
>> variable has 51 elements, while the y variable has 306 elements? What
>> did you expect to happen with that?
>>
>> Use only one dataset within a geom(). Otherwise you are likely the get
>> in troubles.
>>
>> HTH,
>>
>> Thierry
>>
>>
>> ------------------------------------------------------------------------
>> ----
>> ir. Thierry Onkelinx
>> Instituut voor natuur- en bosonderzoek / Research Institute for Nature
>> and Forest
>> Cel biometrie, methodologie en kwaliteitszorg / Section biometrics,
>> methodology and quality assurance
>> Gaverstraat 4
>> 9500 Geraardsbergen
>> Belgium
>> tel. + 32 54/436 185
>> Thierry.Onkelinx at inbo.be
>> www.inbo.be
>>
>> To call in the statistician after the experiment is done may be no more
>> than asking him to perform a post-mortem examination: he may be able to
>> say what the experiment died of.
>> ~ Sir Ronald Aylmer Fisher
>>
>> The plural of anecdote is not data.
>> ~ Roger Brinner
>>
>> The combination of some data and an aching desire for an answer does not
>> ensure that a reasonable answer can be extracted from a given body of
>> data.
>> ~ John Tukey
>>
>> -----Oorspronkelijk bericht-----
>> Van: r-help-bounces at r-project.org [mailto:r-help-bounces at r-project.org]
>> Namens bogaso.christofer
>> Verzonden: vrijdag 25 september 2009 14:47
>> Aan: R-help at stat.math.ethz.ch
>> Onderwerp: [R] Problem on plotting TS using GGPLOT
>>
>> Hi, I have following codes :
>>
>>
>>
>>
>>
>> library(zoo); library(ggplot2); library(plyr)
>>
>>
>>
>>
>>
>> dat <- rnorm(306); vv <- letters[1:6]; dat1 <- data.frame(dat, vv)
>>
>> dat2 = zooreg(rnorm(51), as.yearmon(as.Date("2000-01-01")),
>> frequency=12)
>>
>>
>>
>> ggplot(dat1) +
>>
>>             geom_line(aes(y=dat, x=index(dat2), colour=vv), group=vv,
>> size =
>> 1.3)
>>
>>
>>
>>
>>
>> However I got error while plotting them :
>>
>> Error in data.frame(x = c(2000, 2000.08333333333, 2000.16666666667,
>> 2000.25,
>> :
>>
>>   arguments imply differing number of rows: 51, 306
>>
>>
>>
>> I could not find why that error is coming. Any idea please ?
>>
>>
>>
>> Thanks,
>>
>>
>>       [[alternative HTML version deleted]]
>>
>> ______________________________________________
>> R-help at r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-help
>> PLEASE do read the posting guide
>> http://www.R-project.org/posting-guide.html
>> and provide commented, minimal, self-contained, reproducible code.
>>
>> Druk dit bericht a.u.b. niet onnodig af.
>> Please do not print this message unnecessarily.
>>
>> Dit bericht en eventuele bijlagen geven enkel de visie van de schrijver
>> weer
>> en binden het INBO onder geen enkel beding, zolang dit bericht niet
>> bevestigd is
>> door een geldig ondertekend document. The views expressed in  this message
>> and any annex are purely those of the writer and may not be regarded as
>> stating
>> an official position of INBO, as long as the message is not confirmed by a
>> duly
>> signed document.
>>
>> ______________________________________________
>> R-help at r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-help
>> PLEASE do read the posting guide
>> http://www.R-project.org/posting-guide.html
>> and provide commented, minimal, self-contained, reproducible code.
>>
>>
>
> --
> View this message in context: http://www.nabble.com/Problem-on-plotting-TS-using-GGPLOT-tp25611332p25612219.html
> Sent from the R help mailing list archive at Nabble.com.
>
> ______________________________________________
> R-help at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>




More information about the R-help mailing list