仅绘制 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 轴的值:
我的问题是:
- 有什么办法让它不跨越这么大的范围吗? (如果我们可以忽略绘制阴影部分)
- 有没有办法只绘制尾部预测部分? (我不想绘制整个历史数据)
我刚刚从 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'。
当我通过以下代码与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 轴的值:
我的问题是:
- 有什么办法让它不跨越这么大的范围吗? (如果我们可以忽略绘制阴影部分)
- 有没有办法只绘制尾部预测部分? (我不想绘制整个历史数据)
我刚刚从 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'。