# [R] multiple lines on multiple plots

James Annan jdannan at jamstec.go.jp
Wed Apr 13 07:06:19 CEST 2011

```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
>> 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/

```