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

如何使用R语言将训练集、测试集及预测结果绘制在同一张图中

要实现训练集、测试集、预测折线同图展示,可按如下方式调整代码,解决原代码可能出现的x轴坐标不匹配、序列重叠问题:

# 生成预测结果
prev <- predict(m, newdata = as.data.frame(test))
# 计算训练集长度,用于对齐三个序列的x轴坐标
train_length <- length(train)
test_length <- length(test)
# 先绘制训练集,显式设置坐标轴范围覆盖所有数据
plot(
  x = 1:train_length, 
  y = train, 
  type = "l", 
  col = "red",
  ylab = "Vol",
  xlim = c(1, train_length + test_length),
  ylim = range(c(train, test, prev))
)
# 绘制测试集真实值,x轴从训练集结束位置开始
lines(
  x = (train_length + 1):(train_length + test_length),
  y = test,
  col = "yellow"
)
# 绘制预测折线
lines(
  x = (train_length + 1):(train_length + test_length),
  y = prev,
  col = "blue"
)
# 可选添加图例区分三类折线
legend(
  "topright",
  legend = c("训练集", "测试集真实值", "预测值"),
  col = c("red", "yellow", "blue"),
  lty = 1
)

关键调整说明:

  • 显式指定每个序列的x轴坐标:原代码直接调用plot(train)会默认x轴范围为1到训练集长度,后续绘制测试集、预测值时也会默认从x=1开始,导致三个序列重叠在同一区间,无法体现时序先后关系。
  • 提前设置xlim和ylim:保证绘图区域能完整容纳所有数据,避免部分序列被截断。
  • 新增的图例可快速区分不同折线含义,提升图表可读性。

内容的提问来源于stack exchange,提问作者CHAIMAE HAFID

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 16:24:10