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

Pyplot如何按元素数量限制x轴 适配Facebook Prophet动态绘图需求

实现方法

你完全可以通过数据切片或者动态读取x轴范围的方式实现需求,不需要写死固定时间区间,两种常用方案如下:

  • 方案1:绘图前提前截断数据(推荐,性能更好)
    Prophet的绘图入参支持传入截断后的预测结果DataFrame,直接取你需要的最近N条或者最近一个月的数据再绘图即可,示例代码:
# 仅保留最近1000条数据绘制
recent_forecast = forecast.tail(1000)
fig = model.plot(recent_forecast)

如果要严格匹配最近一个月的动态范围,用时间过滤即可:

from datetime import timedelta
# 自动计算当前数据最晚时间往前推30天的节点
cutoff_date = forecast['ds'].max() - timedelta(days=30)
recent_forecast = forecast[forecast['ds'] >= cutoff_date]
fig = model.plot(recent_forecast)
  • 方案2:生成全量图后动态调整x轴范围
    如果你已经基于全量数据生成了绘图对象,直接读取预测结果的时间范围设置x轴即可,不需要手动计算时间区间:
# 先生成全量预测图
fig = model.plot(forecast)
ax = fig.gca()

n = 1000
# 取最近1000条数据的时间区间作为x轴范围
x_start = forecast['ds'].tail(n).iloc[0]
x_end = forecast['ds'].tail(n).iloc[-1]
ax.set_xlim(x_start, x_end)

两种方案都可以适配动态变动的时间范围,不管你的数据集怎么更新,都会自动展示最新的指定数量或者指定时长的数据。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 21:24:01