提问人:Michael Stern 提问时间:11/18/2023 最后编辑:Trenton McKinneyMichael Stern 更新时间:11/19/2023 访问量:43
为什么要按年粒度进行注解?
Why annual granularity of annotation?
问:
我从 Excel 导入一个简单的数据框。七个日期,12/2021 - 12/2027,每个日期相隔一年,每个日期都与一个数字相关联。我想添加一个注释(将实际历史值与预测数字分开的垂直线)和文本来明确这一点。
df.plot()
#annotation
plt.axvline(pd.to_datetime('2023-6-01'))
plt.text(pd.to_datetime('2022-06-01'), 20**6, 'actual')
plt.text(pd.to_datetime('2023-06-01'), 20**6, 'forecast')
plt.show()
系统会将我的展示位置四舍五入到最接近的年末。因此,使用上面的代码,所有三个展示位置的设置都比我希望的要早六个月。
如何让线条和文本出现在指定的月份?
答:
0赞
Michael Stern
11/18/2023
#1
该问题已通过使用子图来解决。所以把上面的代码换成
figure, ax = plt.subplots() # need both of those; subplots is a tuple
ax.plot(df)
#annotation
ax.axvline(pd.to_datetime('2022-6-01'))
ax.text(pd.to_datetime('2021-06-01'), 20**6, 'actual')
ax.text(pd.to_datetime('2022-06-01'), 20**6, 'forecast')
plt.show()
并且注释可以自由放置。
评论
axvline