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<jdan...@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 jdan...@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@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 jdan...@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@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.

Reply via email to