[R] how do I plot a regression curve with the data?

Peter Ehlers ehlers at ucalgary.ca
Wed Oct 28 07:57:48 CET 2009

Ken Ervin wrote:
> I have a data set of 6 or so ordered pairs, and I've been able to graph 
> them and have decided to use a high-order polynomial regression.  I've 
> used the following piece of code:
> regression <- function(x,y) {
>    x <- c(insert_numbers_here)
>    y <- c(insert_other_numbers_here)
>    fit <- lm(y ~ x + I(x^2) + I(x^3) + I(x^4) + I(x^5) + I(x^6) + I(x^7) 
> + I(x^8) + I(x^9))
>    summary(fit)
> This gives me the coefficients for the regression very nicely, but I 
> would like to plot both the data and the regression curve together.  How 
> do I plot that regression curve as a function, and can I put it on the 
> same set of axes as my data scatter plot?
Are you sure that fitting such a high-degree polynomial makes
sense? Is there any theory to support the model? If you really
want to do this, then use predict.lm():

## with xmin, xmax as the limits of your scatterplot
  xx <- seq(xmin, xmax, length=51)
  yy <- predict(fit, newdata=list(x=xx))
  lines(xx, yy)  ## add to scatterplot

  -Peter Ehlers

> Thanks in advance for your help!
> -KE
> ______________________________________________
> 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