我的数据以pandas dataframe的形式存储。我使用matplotlib中的plot_date()函数创建了一个日期(对象格式)与百分位数(int64格式)的图表,并希望在预先指定的日期添加一些垂直线。
我已经成功地在预先指定的日期添加了点标记,但似乎找不到方法将它们转换为垂直线。
我在SO/SE上找到了各种关于如何向plot()添加垂直线的答案,但是我无法将我的数据转换为可以被plot()使用的格式,因此我使用了plot_date()。
样本数据:
date percentile
2012-05-30 3
2014-11-25 60
2012-06-15 38
2013-07-18 16
绘制图表的代码如下:
x_data = data["date"]
y_data = data["percentile"]
plt.figure()
plt.plot()
#create a scatter chart of dates vs. percentile
plt.plot_date(x = x_data, y = y_data)
#now add a marker at prespecified dates - ideally this would be a vertical line
plt.plot_date(x = '2012-09-21', y = 0)
plt.savefig("percentile_plot.png")
plt.close()
很遗憾,我无法提供当前输出的图像,因为代码在没有网络访问权限的终端上。
非常感谢任何帮助 - 包括关于我的提问方式的建议,因为我对SO / SE还很陌生。
谢谢。