# [R-SIG-Mac] [R] plot 2 graphs on the same x-y plane

Susan Gruber sgruber at hsph.harvard.edu
Wed Apr 11 15:42:20 CEST 2012

```Hi,
A line can be added to an existing plot using the abline function.  For example, if a is the intercept and b is the slope, the command would be
abline(a=a, b=b)

To overlay a new plot on an existing one, use the command: par(new=TRUE).
For example:

plot(1:10, 1:10)
par(new=TRUE)
plot(log(1:10), 1:10)

This approach often leads to issues with the scale of the axes, tick marks, and labels.  Fortunately, R provides the flexibility to deal with all of them. I recommend you carefully read the help pages for plot, par, and axis, and have some fun playing around with all the options.

--Susan

On Apr 10, 2012, at 11:55 PM, Tawee Laoitichote wrote:

>
> Dear Michael (and Davis), Your answer is not what I want to know. My question is to find any command to plot the data I got from the field; such as a set of (x,y) data ( I actually have these data) and together withe the derived ones . I brought these data to plot on x-y plane,  getting a graph showing some relation. Then, I wanted to find some linear relation, I would use least square method to solve having a simple function such as; y = ax + b, solving the a and b. So, I could plot a straight line using this function, or perhaps forecast some data of y which I know the value x. My problem is when I did a scatter plot by command "plot(x,y)", I got a graph. Whilst I plotted another graph using the above function the existing graph disappeared replaced be the latter function. Unfortunately, after searching a while to find the solution command, I can not find the command. I asked the question as to request some help not the example you shown. Any way, thanks for you effort. Ta!
>
> wee Mac OS10.7.3
>> From: michael.weylandt at gmail.com
>> Date: Tue, 10 Apr 2012 23:31:08 -0400
>> Subject: Re: [R] plot 2 graphs on the same x-y plane
>> To: ohowow2007 at hotmail.com
>> CC: r-help at r-project.org
>>
>> This is the same malformatted message you posted on R-SIG-Mac even
>> behavior, but perhaps this will enlighten:
>>
>> # Minimal reproducible data!
>> x <- runif(15, 0, 5)
>> y <- 3*x - 2 + runif(15)
>>
>> dat <- data.frame(x = x, y = y)
>> rm(list = c("x", "y"))
>>
>> # Base graphics plot using the formula interface
>> plot(y ~ x, data = dat)
>> abline(lm(y~x, data = dat), col = "red3", lwd = 2)
>>
>> Alternatively
>>
>> library(ggplot2)
>> ggplot(dat, aes(x = x, y = y)) + geom_point() + stat_smooth(method =
>> "lm", color = I("red3"))
>>
>> which is perhaps overkill in this situation.
>>
>>
>> Michael
>>
>> On Tue, Apr 10, 2012 at 11:03 PM, Tawee Laoitichote
>> <ohowow2007 at hotmail.com> wrote:
>>>
>>>
>>>
>>>
>>> hi,  I'm doing some data on least square curve fitting. What I like to have is to compare the scatter plot whilst having the fitting curve on the same coordinates. Any suggestting command besides plot(x,y).  TaweeMac OSX 10.7.3
>>>       [[alternative HTML version deleted]]
>>>
>>> ______________________________________________
>>> R-help at r-project.org mailing list
>>> https://stat.ethz.ch/mailman/listinfo/r-help