绘制多个多项式回归曲线

时间:2016-02-26 23:51:35

标签: r plot regression

我试图只绘制一些回归线而不是任何一点。 (没有fitted,因为我有超过7000点。)我知道如何使用线性回归进行此操作,而不是使用多项式回归。我的数据是here。有一些线性回归:

plot_data=read.csv("plot_data.csv") #read data

#linear regressions
Off_linear=lm(Z_Salary~OBPM,data=plot_data) 
Def_linear=lm(Z_Salary~DBPM,data=plot_data)
Tot_linear=lm(Z_Salary~BPM,data=plot_data)   

#try to plot. This works. Not sure how to add legend
termplot(Def_linear, ylab='Z_Salary',xlab='BPM',ylim=c(-2, 2))
abline(Off_linear)
abline(Tot_linear,col='blue')

Plot

但是,如果我尝试创建多项式回归,我就无法做到这一点。我希望这些回归具有相同类型的情节,但termplot确实与自变量一起使用并分别进行。

Off_exp=lm(Z_Salary~OBPM+I(OBPM^2),data=plot_data)
Def_exp=lm(Z_Salary~DBPM+I(DBPM^2),data=plot_data)
Tot_exp=lm(Z_Salary~BPM+I(BPM^2),data=plot_data)

1 个答案:

答案 0 :(得分:1)

@Dason已经给了你提示。在下面找到一些代码,以使其工作。

Off_exp=lm(Z_Salary~OBPM+I(OBPM^2),data=plot_data)
x=seq(from=range(plot_data$OBPM)[1], to=range(plot_data$OBPM)[2])
y=predict(Off_exp, newdata=list(OBPM=x))
plot(x, y, type="l", col="blue", xlab="OBPM", ylab="Z_Salary")
legend("topleft", legend="d2", col="blue", lty=1, title="polys")

它看起来像这样: resulting plot

希望它有所帮助。

相关问题