[R] multiple lines on multiple plots

Greg Snow Greg.Snow at imail.org
Tue Apr 19 00:04:02 CEST 2011


Going back to a previous graph does not automatically restore the coordinate system (as you noticed).  But you can store that information (lot less info than your data in most cases) and reset it manually.  Try:

x<- 1:10
y<- (1:100)*3
par(mfcol=c(2,1))
plot(x)
tmp1 <- par('usr')
plot(y)
tmp2 <- par('usr')

par(mfg=c(1,1))
par(usr=tmp1)
lines(x)
par(mfg=c(2,1))
par(usr=tmp2)
lines(y)


-- 
Gregory (Greg) L. Snow Ph.D.
Statistical Data Center
Intermountain Healthcare
greg.snow at imail.org
801.408.8111


> -----Original Message-----
> From: r-help-bounces at r-project.org [mailto:r-help-bounces at r-
> project.org] On Behalf Of James Annan
> Sent: Tuesday, April 12, 2011 11:06 PM
> To: jim holtman
> Cc: r-help at r-project.org
> Subject: Re: [R] multiple lines on multiple plots
> 
> Thanks for all the replies. Yes, I agree that calculating all the data
> first is a simple solution which also has the benefit of making the
> axis
> choice easier to get right, but on the downside it requires storing an
> order of magnitude more output than my original sequential approach
> would have done. Not actually a problem for me right now, but may be
> for
> larger cases and certainly seems inelegant in general. So I'm still
> interested to know if there is some practical way of returning to an
> earlier plot. I suppose I could artificially scale the data to make it
> match the wrong axes. But that would be horrible.
> 
> (The example was deliberately simple, but in reality I want to loop
> through a bunch of simple simulations each of which generates several
> types of output, and create a graph for each type of output.)
> 
> James
> 
> On 13/4/11 1:25 AM, jim holtman wrote:
> > Instead of trying to go back to a previous plot, gather up all the
> > data for the plots and generate each one with the appropriate data.
> > This is much easier than trying to keep track of what the dimensions
> > are.  Also if the data you want to add is outside the plot, then you
> > have issues with clipping; knowing what the dimensions of all the
> data
> > you want to plot is a reasonable way to go.
> >
> > On Tue, Apr 12, 2011 at 9:30 AM, James Annan<jdannan at jamstec.go.jp>
> wrote:
> >> I'm sure this must be trivial, but I'm a novice with R and can't
> work out
> >> how to handle the axes when I am constructing multiple plots on a
> page and
> >> try to return to a previous one to put multiple data sets it.
> >>
> >> A simple example:
> >> ---
> >> x<- 1:10
> >> y<- (1:100)*3
> >> par(mfcol=c(2,1))
> >> plot(x)
> >> plot(y)
> >>
> >> par(mfg=c(1,1))
> >> lines(x)
> >> ---
> >>
> >> The first 5 lines make two plots with a row of dots along the
> diagonal of
> >> each. I intended the last two statements to add a line to the first
> plot,
> >> that runs along the same data points already plotted there. However,
> >> although the commands add a line to the top plot, it is clearly
> using the
> >> axis dimensions of the lower plot. Can someone tell me how to get it
> to use
> >> the axes that are already there?
> >>
> >> Variants like lines(x,xlim=c(1,10)) have no effect.
> >>
> >> Thanks in advance for any help.
> >>
> >> James
> >> --
> >> James D Annan jdannan at jamstec.go.jp Tel: +81-45-778-5618 (Fax 5707)
> >> Senior Scientist, Research Institute for Global Change, JAMSTEC
> >> (The Institute formerly known as Frontier)
> >> Yokohama Institute for Earth Sciences, 3173-25 Showamachi,
> >> Kanazawa-ku, Yokohama City, Kanagawa, 236-0001 Japan
> >> http://www.jamstec.go.jp/frcgc/research/d5/jdannan/
> >>
> >> ______________________________________________
> >> 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.
> >>
> >
> >
> >
> 
> 
> --
> James D Annan jdannan at jamstec.go.jp Tel: +81-45-778-5618 (Fax 5707)
> Senior Scientist, Research Institute for Global Change, JAMSTEC
> (The Institute formerly known as Frontier)
> Yokohama Institute for Earth Sciences, 3173-25 Showamachi,
> Kanazawa-ku, Yokohama City, Kanagawa, 236-0001 Japan
> http://www.jamstec.go.jp/frcgc/research/d5/jdannan/
> 
> ______________________________________________
> 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