You need to enable JavaScript to run this app. Matplotlib绘制股价预测图触发无效日期ValueError的问题求助
优惠活动
大模型
产品
解决方案
定价
更多

Matplotlib绘制股价预测图触发无效日期ValueError的问题求助

报错根本原因
  • 代码执行顺序颠倒:你当前的代码块里,将dataset_train转换为datetime索引的3行逻辑,放在了所有绘图代码的后面。Colab分块运行时,代码执行顺序由你点击运行的顺序决定,和页面排版顺序无关——你运行绘图块时,dataset_train的索引还是默认的从0开始的整数序列,根本没有完成日期格式转换。
  • 两类x轴值量级不匹配:绘图时你同时传入两类值作为x坐标:PREDICTIONS_FUTURE的datetime索引(在matplotlib中对应几万量级的日期序数)、dataset_train的整数索引(0、1、2…的小数值)。matplotlib检测到传入值包含datetime类型后,会自动将x轴设置为datetime格式,此时轴的视图范围会被拉取到整数索引的最小值(0)和预测值的最大日期序数之间,0值对datetime轴来说是远早于公元1年的无效值,最终在渲染x轴刻度(也就是执行plt.xticks()时)抛出报错。报错里的-34780.4极值,就是两类不匹配的x值混算后得到的无效视图下限。
  • 该问题和你CSV文件里的日期列质量无关。
修复操作
  • 调整代码顺序:把dataset_train的索引转换代码移到所有绘图逻辑的最前面,在Colab里先完整运行数据加载、索引转换的所有代码块,再运行绘图代码块。
  • 绘图前增加类型校验,确认两个绘图数据集的x轴索引都为datetime类型:
    print(type(PREDICTIONS_FUTURE.index))
    print(type(dataset_train.index))
    # 两个输出均为 pandas.core.indexes.datetimes.DatetimeIndex 才算符合要求
    
  • 可顺手修正标题拼写错误:原标题中的Predcitions改为Predictions,Acutal改为Actual。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.11.05 17:36:09