首页 > 解决方案 > 仅绘制 matplot lib 中 datetime 对象的时间

问题描述

我有一个日期和时间值列表,'2019-08-24 08:57:18.550'例如格式。我已经成功地将它们转换为 matplotlib 可以理解的数字datetime与代码一起使用,matplotlib.dates.date2num(points)但是我无法让 matplotlib 仅绘制时间,而不是关联的日期。它创建的图表带有带有标签的刻度线,例如08-24 12我假设其格式为“月-日小时”。我希望它只绘制时间,理想情况下使用“小时:分钟”或类似的格式。如何让 matplotlib 做到这一点?

标签: pythonmatplotlib

解决方案


如果我理解正确,并且这是您正在寻找的当前日期/时间,那么:

>>> from datetime import datetime
>>> current_time = datetime.now()
>>> current_time
datetime.datetime(2020, 5, 18, 22, 4, 41, 425538)

#################(year, month, day, hour, minute, second, microsecond)

然后你可以格式化它(这是我不太明白你在问什么),但如果你想要小时:分钟格式,那么:

from datetime import datetime

time = datetime.now()

hour = time.hour
minute = time.minute

print(f"{hour}:{minute}")

你应该注意到它datetime.datetime(2020, 5, 18, 22, 4, 41, 425538)是不可迭代的。


推荐阅读