在pandas DataFrame上显示指定间隔的xticks

时间:2016-03-19 01:42:13

标签: python pandas matplotlib

当我绘制名为df的下面的DataFrame时,我得到了这个数字。

df = pd.DataFrame([[1 for _ in range(20)]]).T
df.index = ["{}:00:00".format(x) for x in range(20)]
df.plot()

enter image description here

我希望每两到三行显示一次xticks,即0:00,2:00,4:00 ......因为每5个间隔看起来太大了。

是否可以显示指定间隔的xticks?

1 个答案:

答案 0 :(得分:0)

您的索引是一堆字符串,而不是实际日期。

如果您使用日期,大熊猫可以更明智地告诉matplotlib要做什么:

df = pandas.DataFrame({'A': range(20)}, index=pandas.date_range('2012-01-01', freq='1H', periods=20))
df.plot()

enter image description here

那就是说,如果你还不喜欢熊猫'选择,关于在matplotlib中放置ticks有很多问题。这是其中之一: Frequency and rotation of x-axis labels in Matplotlib