[R] Display Equation on plot
Matthieu Dubois
matthdub at gmail.com
Tue Mar 24 18:16:06 CET 2009
Douglas M. Hultstrand <dmhultst <at> metstat.com> writes:
>
> Hello,
>
> I am using the lm to fit a linear model to data, I was wondering if
> there is a way to display the equation on a plot using the extracted lm
> coefficients? I am using the plot() function to create the plot/.png.
>
> Example:
> lm_mod <- lm(data1~data2)
>
> intercept = 48.54
> slope = 0.4856
>
> I want to display equation on a plot as y=0.4856x+48.54
see ?bquote for building the equation expression
and ?mtext to display text within margins
e.g.
# generate random x and y values
x <- rnorm(100)
y <- 3*x+15 + rnorm(x)
lm_mod <- lm(y ~ x)
plot(x, y)
abline(lm_mod) # add regression line to the plot
lm_coef <- round(coef(lm_mod), 3) # extract coefficients
mtext(bquote(y == .(lm_coef[2])*x + .(lm_coef[1])),
adj=1, padj=0) # display equation
regards,
Matthieu
More information about the R-help
mailing list