You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

R中使用tslm()绘制残差拟合图遇问题:plot报错且红线不显示

解决tslm模型残差vs拟合值绘图及红线显示问题

1. 修复红色参考线不显示的问题

你当前代码里的abline(0,0)默认使用黑色线条,视觉上不明显。只需添加颜色参数就能调出红色参考线,和lm()生成的图效果一致:

# 提取残差与拟合值
res <- resid(ts_model)
fitted_vals <- fitted(ts_model)

# 绘制残差vs拟合值图
plot(fitted_vals, res, 
     xlab = "拟合值", ylab = "残差", 
     main = "残差 vs 拟合值",
     pch = 16)
# 添加红色水平参考线
abline(h = 0, col = "red", lwd = 2)

其中h = 0明确指定绘制y=0的水平线,col="red"设置红色,lwd=2让线条更粗更显眼。

2. 模拟lm()默认残差图的完整样式

如果想要更贴近lm()默认残差图的细节(比如添加平滑趋势线),可以结合lowess函数实现:

plot(fitted_vals, res, 
     xlab = "拟合值", ylab = "残差", 
     main = "残差 vs 拟合值",
     pch = 16)
abline(h = 0, col = "red", lwd = 2)
# 添加蓝色平滑拟合线
lines(lowess(fitted_vals, res), col = "blue", lwd = 1.5)

3. 关于plot(ts_model)报错的说明

tslm()来自forecast包,其返回的模型对象未实现完整的plot方法,直接调用plot(ts_model)会触发维度错误,因此手动提取残差和拟合值是可靠的替代方案。

内容的提问来源于stack exchange,提问作者Priscilla Raj

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 01:24:57