Unfortunately something doesn't work: > tab <- ts(cbind(A = c(79.47, 89.13, 84.86, 75.68, 72.82, 78.87, 93.46, + 78.18, 82.46, 77.25, 80.95, 84.39, 81.7, 74.76, 65.29, 60.3, + 66.59, 73.19, 92.39, 65.76, 77.45, 74.22, 101.36, 100.01), B = c(77.95, + 76.73, 51.2, 51.86, 51.29, 49.45, 53.88, 47.96, 55.07, 45.34, + 37.07, 37.53, 47.79, 37.5, 30.35, 37.78, 34.13, 39.14, 39.89, + 35.46, 36.54, 38.39, 47.33, 45.34)), start = c(2006, 1), freq = 12) > > library(zoo) > pnl.xaxis <- function(...) { + lines(...) Error: unexpected input in: "pnl.xaxis <- function(...) { "
What's wrong with it? Ciao Vittorio Il Monday 03 December 2007 20:40:16 Gabor Grothendieck ha scritto: > This can be done with plot.zoo and a panel function: > > tab <- ts(cbind(A = c(79.47, 89.13, 84.86, 75.68, 72.82, 78.87, 93.46, > 78.18, 82.46, 77.25, 80.95, 84.39, 81.7, 74.76, 65.29, 60.3, > 66.59, 73.19, 92.39, 65.76, 77.45, 74.22, 101.36, 100.01), B = c(77.95, > 76.73, 51.2, 51.86, 51.29, 49.45, 53.88, 47.96, 55.07, 45.34, > 37.07, 37.53, 47.79, 37.5, 30.35, 37.78, 34.13, 39.14, 39.89, > 35.46, 36.54, 38.39, 47.33, 45.34)), start = c(2006, 1), freq = 12) > > library(zoo) > pnl.xaxis <- function(...) { > lines(...) > panel.number <- parent.frame()$panel.number > nser <- parent.frame()$nser > # if bottom panel > if (!length(panel.number) || panel.number == nser) { > tt <- list(...)[[1]] > ym <- as.yearmon(tt) > mon <- as.numeric(format(ym, "%m")) > yy <- format(ym, "%y") > mm <- substring(month.abb[mon], 1, 1) > axis(1, tt[mon == 1], yy[mon == 1], cex.axis = 0.7) > axis(1, tt[mon > 1], mm[mon > 1], cex.axis = 0.5, tcl = -0.3) > } > } > plot(as.zoo(tab), panel = pnl.xaxis, xaxt = "n") > > On Dec 3, 2007 12:11 PM, vittorio <[EMAIL PROTECTED]> wrote: > > I have the following timeseries "tab" > > ===================================== > > > > > str(tab) > > > > mts [1:23, 1:2] 79.5 89.1 84.9 75.7 72.8 ... > > - attr(*, "dimnames")=List of 2 > > ..$ : NULL > > ..$ : chr [1:2] "Ipex...I" "Omel...E" > > - attr(*, "tsp")= num [1:3] 2006 2008 12 > > - attr(*, "class")= chr [1:2] "mts" "ts" > > > > > tab > > > > Ipex...I Omel...E > > Jan 2006 79.47 77.95 > > Feb 2006 89.13 76.73 > > Mar 2006 84.86 51.20 > > Apr 2006 75.68 51.86 > > May 2006 72.82 51.29 > > Jun 2006 78.87 49.45 > > Jul 2006 93.46 53.88 > > Aug 2006 78.18 47.96 > > Sep 2006 82.46 55.07 > > Oct 2006 77.25 45.34 > > Nov 2006 80.95 37.07 > > Dec 2006 84.39 37.53 > > Jan 2007 81.70 47.79 > > Feb 2007 74.76 37.50 > > Mar 2007 65.29 30.35 > > Apr 2007 60.30 37.78 > > May 2007 66.59 34.13 > > Jun 2007 73.19 39.14 > > Jul 2007 92.39 39.89 > > Aug 2007 65.76 35.46 > > Sep 2007 77.45 36.54 > > Oct 2007 74.22 38.39 > > Nov 2007 101.36 47.33 > > Dec 2007 100.01 45.34 > > =============================== > > > > Plotting tab with a simple "plot(tab,plot.type="single")" I'm obtaining a > > graph with the x axis in an orrible decimal format so that,e.g., Jan > > 2006 is 2006.0 and Nov 2006 is 2006.8(33)! > > > > Instead I would like to see the x-axis in a more human-readable format, > > for instance, 12 tics for each year and a label at the beginning of each > > quarter of the year: 2006.1, 2006.4,2006.7. > > - OR - > > more elegantly, I would like to have the 12 tics with the month shortened > > labels: Jan, Feb, etc. and below, say June, one label for the year. > > > > Please help. > > > > Ciao > > Vittorio > > > > ______________________________________________ > > R-help@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. ______________________________________________ R-help@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.