我有一个包含两列的CSV文件,一列是工作日的名称,另一列是员工的登录时间。我该如何使用matplotlib或pyplot来绘制这些数据?我不明白如何在Y坐标上绘制时间。时间数据的格式是“23/02/2017 at 11:30 PM”。
我需要对数据进行修改吗?还是可以直接绘制?
回答:
使用datetime格式化时间,然后直接使用pyplot绘制格式化后的日期。一个示例代码如下。
from datetime import datetimeimport matplotlib.pyplot as pltimport matplotlib.dates as mdatessampleTime = "23/02/2017 at 11:30 PM"timeFormatted = datetime.strptime(sampleTime, "%d/%m/%Y at %I:%M %p")print(timeFormatted)plt.scatter(timeFormatted, 0)# 调整X轴标签plt.gcf().autofmt_xdate()showFormat = mdates.DateFormatter('%Y-%m-%d %H:%M')plt.gca().xaxis.set_major_formatter(showFormat)plt.show()