2014-05-18 132 views
3

此代碼地塊迴歸線與GGPLOT2相互作用:情節線性迴歸線GGPLOT2

library(ggplot2) 
ggplot(mtcars, aes(hp, mpg, group = cyl)) + geom_point() + stat_smooth(method = "lm") 

enter image description here

可以不相互作用線與stat_smooth繪製?

+0

斜率爲每個三個迴歸線應該是相同 – luciano

+0

因此,採取',基團= cyl'了呢? –

+0

三條迴歸線(每組有一個cyl),每條回線具有相同的斜率但截距不同 – luciano

回答

5

解決方法是使模型在ggplot()之外。然後對此模型進行預測並將結果添加到原始數據框中。這將添加列fitlwrupr。現在

mod<-lm(mpg~factor(cyl)+hp,data=mtcars) 
mtcars<-cbind(mtcars,predict(mod,interval="confidence")) 

可以使用geom_line()fity添加三個迴歸線和geom_ribbon()lwrupr添加置信區間。

ggplot(mtcars, aes(hp, mpg, group = cyl)) + geom_point() + 
     geom_line(aes(y=fit))+geom_ribbon(aes(ymin=lwr,ymax=upr),alpha=0.4) 

enter image description here