首页 > 解决方案 > Matplotlib:如何以时间(HH24:MI)为 Y 轴绘制图形

问题描述

我正在尝试绘制一个图表,显示不同营业日期每天的工作何时完成。

我的熊猫数据框看起来像......

     business_dt  job_finish_time     job_name
0    19/03/2020   20/03/2020 09:17:08 job_1
1    20/03/2020   21/03/2020 08:10:11 job_1
2    21/03/2020   22/03/2020 14:12:02 job_1
3    19/03/2020   20/03/2020 20:10:04 job_2
4    20/03/2020   21/03/2020 20:06:02 job_2
5    21/03/2020   22/03/2020 21:44:01 job_2

所以 x 轴将显示业务 dt(dates) 和 y 轴显示工作何时完成,hh24:mi:ss。

因为我对 matplotlib 还很陌生,并且在绘制 Y 轴(hh24:Mi:ss)时遇到了困难。你们中的一个可以指导我如何使用 matplotlib 来绘制这个吗?

任何帮助,将不胜感激。

谢谢

标签: pythonpandasmatplotlibmatplotlib-basemap

解决方案


将您的数据转换为datetime.datetime使用 datetime.strptime。请参阅此处的文档。

from datetime import datetime

datetime_y=[datetime.strptime(i, "%d/%m/%Y %H:%M:%S") for i in df['job_finish_time']]
datetime_x=[datetime.strptime(i, "%d/%m/%Y") for i in df['business_dt']]

plt.plot(datetime_x,datetime_y)
plt.show()

推荐阅读