绘制多项式回归曲线

Plot multiple polynomial regression curve

我试图只绘制几条回归线而不是任何点。 (没有 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')

但是,如果我尝试创建多项式回归,我将无法执行此操作。我想要与这些回归相同类型的图,但 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)

@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")

它看起来像这样:

希望对您有所帮助。