仅绘制 Facebook Prophet 模型的预测值 Python

Plotting only forecasted value on Facebook Prophet model Python

当我通过以下代码与facebook先知模型进行绘图时:

number_of_days_in_future = 20
future = m.make_future_dataframe(periods=number_of_days_in_future, freq="D") 
weekend = future[future['ds'].dt.dayofweek < 5  ]
prediction = m.predict(weekend)
m.plot(prediction)
plt.title("Prediction of Value")
plt.xlabel("Date")
plt.ylabel("Value")
plt.show()

它显示了从历史数据开始绘制,如下所示:

很难从图表中理解值,因为它跨越了 Y 轴的大范围。

但如果我只预测几天。这样更容易理解 Y 轴的值:

我的问题是:

  1. 有什么办法让它不跨越这么大的范围吗? (如果我们可以忽略绘制阴影部分)
  2. 有没有办法只绘制尾部预测部分? (我不想绘制整个历史数据)

我刚刚从 fbprophet 存储库中找到了满足我要求的方法。

fig = m.plot(prediction)
ax = fig.gca()
# setting x limit. date range to plot
ax.set_xlim(pd.to_datetime(['2020-08-19', '2020-08-25'])) 
# we can ignore the shadow part by setting y limit
ax.set_ylim([26, 29]) 

图表变得更清晰:

要忽略阴影部分,请将 'uncertainty' 绘图参数设为 'False'。