首页 > 解决方案 > 在 matplotlib 上为 set_xlim 使用 DateTimeIndex

问题描述

如何将 matplotlib 的 x/y 限制设置为某些日期时间值?

我有一个 DateTimeIndex 对象(称为时间),我希望这些图适合该索引的第一个和最后一个值。

如果我尝试ax.set_xlim(time[0],time[-1])

它向我抛出了这个错误:

Cannot compare type Timedelta with type float

有什么建议么?

标签: pythondatetimematplotlib

解决方案


matplotlib 中的时间处理是公历的,所以需要转换,我认为需要用 date2num() 来完成。

matplotlib API 概述:日期

ax.set_xlim(date2num([series_.index.min(), series_.index.max()])) ax.xaxis.set_major_formatter(DateFormatter('%H:%M'))


推荐阅读