这段代码使用ggplot2绘制交互作用的回归线:
library(ggplot2)
ggplot(mtcars, aes(hp, mpg, group = cyl)) + geom_point() + stat_smooth(method = "lm")
是否可以使用stat_smooth
绘制没有交互作用的线条?
这段代码使用ggplot2绘制交互作用的回归线:
library(ggplot2)
ggplot(mtcars, aes(hp, mpg, group = cyl)) + geom_point() + stat_smooth(method = "lm")
是否可以使用stat_smooth
绘制没有交互作用的线条?
解决方法是在ggplot()
之外创建模型。然后对此模型进行预测并将结果添加到原始数据框中。这将添加fit
,lwr
和upr
列。
mod<-lm(mpg~factor(cyl)+hp,data=mtcars)
mtcars<-cbind(mtcars,predict(mod,interval="confidence"))
现在你可以使用geom_line()
,并将fit
值作为y
来添加三条回归线,使用geom_ribbon()
并将lwr
和upr
作为参数来添加置信区间。
ggplot(mtcars, aes(hp, mpg, group = cyl)) + geom_point() +
geom_line(aes(y=fit))+geom_ribbon(aes(ymin=lwr,ymax=upr),alpha=0.4)
, group = cyl
去掉? - David Arenburg