Jim, you can use the function appended below, which is part of package HandyStuff. If you want an example, see ?lmEqn after installing HandyStuff, available at github.com/bryanhanson/HandyStuff. Bryan
lmEqn <- function(df = NULL, y = NULL, x = NULL, method = "lm", leg.loc = c(0, 0), xlab = NULL, ylab = NULL, title = NULL, ...) { # work out a linear model first y1 <- df[,y] x1 <- df[,x] if (method == "lm") mod <- lm(y1 ~ x1) if (method == "rlm") mod <- rlm(y1 ~ x1) m <- mod$coef[2] b <- mod$coef[1] r2 <- round(cor(x1, y1)^2, 4) lab <- paste("m =", round(m, 3), "b =", round(b, 3), "r^2 =", r2, sep = " ") if (method == "lm") lab <- paste("linear model: ", lab) if (method == "rlm") lab <- paste("robust linear model: ", lab) # now plot the data p <- ggplot(df, aes_string(x = x, y = y)) p <- p + geom_point() if (method == "lm") p <- p + geom_smooth(method = "lm") if (method == "rlm") p <- p + geom_smooth(method = "rlm") p <- p + geom_text(aes(x, y, label = lab), size = 5, hjust = 0, vjust = 0, data = data.frame(x = leg.loc[1], y = leg.loc[2]), label = lab) if (!is.null(title)) p <- p + opts(title = title) if (!is.null(xlab)) p <- p + xlab(xlab) if (!is.null(ylab)) p <- p + ylab(ylab) p } On Nov 10, 2011, at 8:45 AM, Durant, James T. (ATSDR/DTEM/PRMSB) wrote: > Hello - > > So I am trying to use ggplot2 to show a linear regression between two > variables, but I want to also show the fit of the line on the graph as well. > > I am using ggplot2 for other graphics in what I am working on, so even though > this would be a fairly easy thing to do in Excel, I would prefer to do it in > R to keep my look and feel, and I think ggplot2 is just cooler. > > Here is a sample script of what I am trying to accomplish: > > df<-NULL > df$x<-rnorm(100) > df$y<-rnorm(100) > df<-data.frame(df) > > ggplot(df, aes(x=x,y=y))+geom_point()+geom_smooth(method=lm) > > > # would like to be able to showr squared and slope/intercept of lm > > VR > > Jim > > > James T. Durant, MSPH CIH > Emergency Response Coordinator > US Agency for Toxic Substances and Disease Registry > Atlanta, GA 30341 > 770-378-1695 > > > > > > [[alternative HTML version deleted]] > > ______________________________________________ > 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. ______________________________________________ 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.