【发布时间】:2013-01-12 13:32:46
【问题描述】:
我有一个使用 DateTime 索引的 DataFrame,并在直方图上显示计数。每个计数为 20 秒。
如何更改 y 轴以显示分钟、小时或天,而不是计数?
这是我的 DataFrame 的前五行:
from pandas.lib import Timestamp
df = pd.DataFrame({'A': {Timestamp('2013-01-20 00:00:16.726000'): 0.14746094,
Timestamp('2013-01-20 00:00:36.726002'): 0.13964844,
Timestamp('2013-01-20 00:00:56.726004'): 0.13574219,
Timestamp('2013-01-20 00:01:16.725997'): 0.14355469,
Timestamp('2013-01-20 00:01:36.725999'): 0.14746094},
'B': {Timestamp('2013-01-20 00:00:16.726000'): 3.5716574,
Timestamp('2013-01-20 00:00:36.726002'): 3.5716574,
Timestamp('2013-01-20 00:00:56.726004'): 3.5716574,
Timestamp('2013-01-20 00:01:16.725997'): 3.5716574,
Timestamp('2013-01-20 00:01:36.725999'): 3.5716574}})
df.plot()
matplotlib v1.2.0 熊猫 0.10.1
撞
【问题讨论】:
-
能否提供
df.head().to_dict()的输出 -
我在上面添加了 df.head().to_dict()
-
目前创建我的时间轴我使用以下:
x = mdates.num2date(x, tz=None)x = [dt.replace(tzinfo=None) for dt in x] -
您使用的是什么版本的 pandas/matplotlib?当你说“计数”时,不清楚你的意思是什么,它看起来对我来说没问题(00:00:26、00:00:36,...作为 x-ticks)。
-
像安迪一样,我对你想要做的事情感到困惑。直方图的点不是在 y 轴上显示计数吗?您可能试图强制使用
hist...考虑退后一步构建条形图。
标签: matplotlib pandas histogram