如果我有使用Pandas数据帧的以下示例Python代码:
import pandas as pd
from datetime import datetime
ts = pd.DataFrame(randn(1000), index=pd.date_range('1/1/2000 00:00:00', freq='H', periods=1000), columns=['Data'])
ts['Time'] = ts.index.map(lambda t: t.time())
ts = ts.groupby('Time').mean()
ts.plot(x_compat=True, figsize=(20,10))
输出图是:
让X-Axis刻度自动按小时或每小时自动分隔的最优雅方法是什么? x_compat=True
没有影响
答案 0 :(得分:3)
您可以传递ts.plot()
参数xticks
。给出正确的间隔时间,您可以按小时计算每小时一次:
max_sec = 90000
ts.plot(x_compat=True, figsize=(20,10), xticks=arange(0, max_sec, 3600))
ts.plot(x_compat=True, figsize=(20,10), xticks=arange(0, max_sec, 7200))
此处max_sec
是xaxis
的最大值,以秒为单位。