【发布时间】:2014-09-03 23:03:56
【问题描述】:
下面的情节
import matplotlib
f= plt.figure(figsize=(12,4))
ax = f.add_subplot(111)
df.set_index('timestamp')['values'].plot(ax=ax)
ax.xaxis.set_major_locator(matplotlib.dates.HourLocator(interval=1))
ax.xaxis.set_major_formatter(matplotlib.dates.DateFormatter('%I'))
plt.show()
即使我有,也会在错误的区域 (GMT) 中显示小时:
> df['timestamp'][0]
Timestamp('2014-09-02 18:37:00-0400', tz='US/Eastern')
事实上,如果我注释掉这一行:
ax.xaxis.set_major_formatter(matplotlib.dates.DateFormatter('%I'))
小时在正确的时区呈现。
为什么?
【问题讨论】:
-
或许可以试试
ax.xaxis.set_major_formatter(matplotlib.dates.DateFormatter('%I', 'US/Eastern') -
@mixedmath 我刚刚尝试过,它使我的安装崩溃(所有软件包的最新版本和带有 conda 的 Python 3)-
标签: python matplotlib