月度归档:2014年11月

ggplot2绘图时可以添加回归线与回归方程吗?

ggplot2添加回归线与回归方程

ggplot2没有内置函数??还是我没找到?搜了很久都没有找到这个excel下使用很频繁的功能。搜来搜去就一种方法,多个出处这里这里,均是写一个函数来实现:

?View Code RSPLUS
1
2
3
4
5
6
7
8
9
10
11
12
13
lm_eqn = function(m) {
  l <- list(a = format(coef(m)[1], digits = 2),
  b = format(abs(coef(m)[2]), digits = 2),
  r2 = format(summary(m)$r.squared, digits = 3));
  if (coef(m)[2] >= 0) {
    eq <- substitute(italic(y) == a + b %.% italic(x)*","~~italic(r)^2~"="~r2,l)
 } else {
 eq <- substitute(italic(y) == a - b %.% italic(x)*","~~italic(r)^2~"="~r2,l) 
 }
 as.character(as.expression(eq));     
}
#使用方法为:
p1 = p + geom_text(aes(x = 25, y = 300, label = lm_eqn(lm(y ~ x, df))), parse = TRUE)

但是我用起来有问题,主要是他每一个点都显示一个公式,全乱套了,也不知道在哪里修改,于是自己也依样画葫芦实现一个简单的。

ab[......]

Read more