geo_smooth 用ggplot2来为散点图自动拟合模型
(2014-08-29 11:28:51)分类: ggplot2 |
The easiest option is to use
geom_smooth() and let ggplot2 fit the model for you
ggplot(calvarbyruno.1, aes(y = PAR, x = Nominal, weight=Nominal^calweight)) + geom_smooth(method = "lm") + geom_smooth(method = "lm", formula = y ~ poly(x, 2), colour = "red") + geom_point() + coord_flip() #回归分析
polyfit函数的数学基础是最小二乘法曲线拟合原理,所得到的函数值在基点处的值与原来点的坐标偏差最小,常用于数据拟合。
geom="smooth" 绘制平滑曲线(基于loess, gam, lm ,rlm,glm)...但是这样做就会导致无法观察到随时间变化的趋势了
method=“loess“:(局域回归模型)对于较小数据集的默认平滑算法,平滑程度由span参数来进行设定。span=0时线较为弯曲,span=1时最为平缓。由于算法复杂度的原因,对于大的数据集loess并不是十分适用。
method="gam":(广义可加模型)当数据点大于1000时,这是默认的平滑算法。
method="lm":用于线性模型。默认为一条直线,也可以用formula=y~poly(x,2)设置为二次函数拟合,或者加载splines包用formula=y~ns(x,2),第二个参数表示自由度,自由度越高拟合曲线也就越弯曲
#拟合博文:
http://blog.csdn.net/pyramidnail/article/details/8035583
http://www.douban.com/note/210758237/
c <- ggplot(mtcars, aes(qsec, wt))
c + stat_smooth()
R2:判定系数。y 的估计值与实际值之比,范围在 0 到 1 之间。如果为 1,则样本有很好的相关性,y 的估计值与实际值之间没有差别。相反,如果判定系数为
0,则回归公式不能用来预测 y 值。有关如何计算 r2 的信息,请参阅本主题下文中的“说明”。
后一篇:[转载]大海与草原