John Jaynes
2003-May-11 18:16 UTC
[R] lines(aline, type = 'b', col = "blue) does not work for POSIXct plot.
Hello, x <- ISOdate(2003, 4, 1:30) # POSIXct vector y <-c(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30) aline <- c(30,29,28,27,26,25,24,23,22,21,20,19,18,17,16,15,14,13,12,11,10,9,8,7,6,5,4,3,2,1) plot(x, y, xaxt = 'n', main = 'Number of Stuff for the Project, April 2003', xlab = 'Report Time', ylab = 'Number of Stuff', type = "b", col = "purple") axis.POSIXct(1, x) lines(aline, type = "b", col = "blue") These commands only produce one plot line on the resulting graph. Similar commands without the POSIXct lines generate the expected additional line on the plot, using the "lines" command. Any help on producing this additional line, while using POSIXct modifiers, will be greatly appreciated, as I have yet to find a book on this Very interesting R Language, that would answer such useful minutiae. Appreciatively, John
Prof Brian Ripley
2003-May-11 19:20 UTC
[R] lines(aline, type = 'b', col = "blue) does not work for POSIXct plot.
On Sun, 11 May 2003, John Jaynes wrote:> x <- ISOdate(2003, 4, 1:30) # POSIXct vector > y <-c(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30) > aline <- c(30,29,28,27,26,25,24,23,22,21,20,19,18,17,16,15,14,13,12,11,10,9,8,7,6,5,4,3,2,1) > plot(x, y, xaxt = 'n', main = 'Number of Stuff for the Project, April 2003', xlab = 'Report Time', ylab = 'Number of Stuff', type = "b", col = "purple") > axis.POSIXct(1, x) > lines(aline, type = "b", col = "blue") > > These commands only produce one plot line on the resulting graph. > Similar commands without the POSIXct lines generate the expected > additional line on the plot, using the "lines" command. Any help on > producing this additional line, while using POSIXct modifiers, will be > greatly appreciated, as I have yet to find a book on this Very > interesting R Language, that would answer such useful minutiae.What do you expect lines(aline) to do? As the help page says Arguments: x, y: coordinate vectors of points to join. and you seem to have ignored the need to specify `x'! If you had, it would have worked. lines(x, aline, type = "b", col = "blue") # works as documented You can hardly expect a book to tell you that you have failed to RTFM, but several would not have led you to believe (incorrectly) that> Similar commands without the POSIXct lines generate the expected > additional line on the plot, using the "lines" command.BTW, 1:30 and 30:1 are in R for a purpose and would make your example both easier to understand and easier to reproduce (since you didn't wrap your lines either: that's a piece of netiquette to bear in mind). BDR -- Brian D. Ripley, ripley at stats.ox.ac.uk Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/ University of Oxford, Tel: +44 1865 272861 (self) 1 South Parks Road, +44 1865 272866 (PA) Oxford OX1 3TG, UK Fax: +44 1865 272595