R语言绘图时abline命令不显示回归直线问题求助
问题核心原因
- 变量方向不匹配:
plot(batters$EBH, batters$TB)将EBH设为x轴、TB设为y轴,而拟合的lm(batters$EBH ~ batters$TB)模型将EBH作为因变量(y)、TB作为自变量(x),二者方向完全相反,导致回归线不在当前绘图视野范围内。 - 变量拼写错误:测试用的代码中
abline(lm(batters$EMH~batters$TB))的EMH为拼写错误,数据集内不存在该变量,会直接报错。 - 手动录入系数容易出现精度误差,直接传入lm对象更为稳妥。
修正后的完整可运行代码
# 读取数据集 batters<-read.table(header=TRUE, text="X AVG EBH TB OPS K.to.BB.Ratio 1 LeMahieu 0.327 61 312 0.893 1.95 2 Urshela 0.314 55 236 0.889 3.48 3 Torres 0.278 64 292 0.871 2.64 4 Judge 0.272 46 204 0.921 2.21 5 Sanchez 0.232 47 208 0.841 3.13 6 Wong 0.285 40 202 0.784 1.76 7 Molina 0.270 34 167 0.711 2.52 8 Goldschmidt 0.260 60 284 0.821 2.13 9 Ozuna 0.243 53 230 0.804 1.84 10 DeJong 0.233 62 259 0.762 2.39 11 Altuve 0.298 61 275 0.903 1.98 12 Bregman 0.296 80 328 1.015 0.69 13 Springer 0.292 62 283 0.974 1.69 14 Reddick 0.275 36 205 0.728 1.83 15 Chirinos 0.238 40 162 0.791 2.45 16 Bellinger 0.305 84 351 1.035 1.14 17 Turner 0.290 51 244 0.881 1.72 18 Seager 0.272 64 236 0.817 2.23 19 Taylor 0.262 45 169 0.794 3.11 20 Muncy 0.251 58 251 0.889 1.65 21 Meadows 0.291 69 296 0.922 2.43 22 Garcia 0.282 47 227 0.796 4.03 23 Pham 0.273 56 255 0.818 1.52 24 Choi 0.261 41 188 0.822 1.69 25 Adames 0.254 46 222 0.735 3.32 26 Yelich 0.329 76 328 1.101 1.48 27 Braun 0.285 55 232 0.849 3.09 28 Moustakas 0.254 66 270 0.845 1.85 29 Grandal 0.246 56 240 0.848 1.28 30 Arcia 0.223 32 173 0.633 2.53") # 绘图:x轴为EBH,y轴为TB plot(batters$EBH,batters$TB,main="Attribute Pairing 5",xlab="EBH",ylab="TB") # 拟合和绘图方向匹配的线性模型:y(TB) ~ x(EBH) lin_model_1<-lm(formula = TB ~ EBH, data = batters) # 查看模型结果 summary(lin_model_1) # 直接传入模型对象绘制回归线,col和lwd参数用于调整线的颜色和粗细,方便识别 abline(lin_model_1, col = "red", lwd = 2)
如果确实需要拟合EBH对TB的回归,调整绘图顺序匹配原有回归方向即可:
plot(batters$TB, batters$EBH, main="Attribute Pairing 5", xlab="TB", ylab="EBH") lin_model_1 <- lm(EBH ~ TB, data = batters) abline(lin_model_1, col = "red", lwd = 2)
内容的提问来源于stack exchange,提问作者seashelbsy
相关产品推荐
相关产品推荐

