[R] how to you use plot to plot multiple time series in one final gra ph

Mark Myatt mark at myatt.demon.co.uk
Tue Nov 27 10:33:21 CET 2001

Miller, Shane CONT <shane.miller at capitalone.com> writes:
>| =========================== A
>| *************************** B
>in this contrived example there are two
>series A,B plotted against time. (x axis
>is time)
>problem: if the range for A and B are
>quite different R goes stupid and only
>shows either A or B but not both (depending
>on what plot command came last i think). 
>how do you fix that? 
>i played around with all sorts of things
>on plot including this last stab:
>A <- c(...)
>B <- c(...)
># using code NOT shown here I figure out the
># min, maxes for the X axis and therefore
># determine the right at and lab arguments
># for axis
>axis(2,at...) # ditto for Y
>I can routinely get R to do a nice job with the
>X axis with above code BUT not Y. in the axis(2...)
>command the graphics line for the Y axis in the
>plot window goes DOWN beneath the X axis even
>though all Y lables are positive.
>R is too smart to be this crazy? what is my pilot
>i hesitate to ask (and this is NOT my burning
>question) but what would happen if A and B had
>different units. can you make R plot A against the
>left hand side Y axis and B against the right 
>hand side axis with appropriately labled and ticked?

The trick is to wrap it up in a function that examines both data series
and sets the axis on the first plot to the combined range. Set ylim on
the first plot call to:

        ylim = c(min(y1, y2), max(y1, y2))

For two series you need to use the axis() function. I have some examples
of this in my tutorial at:



Mark Myatt

r-help mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !)  To: r-help-request at stat.math.ethz.ch

More information about the R-help mailing list