我正在尝试绘制时间序列数据,并按月份标记x轴。 这是我的数据框的前几个:
git push origin HEAD:<your_branch>
我的代码如下:
Time Value
2012-01-01 00:00:00 1.223
2012-01-01 00:00:30 2.132
2012-01-01 00:01:00 1.417
2012-01-01 00:01:30 1.767
正如其他答案所建议的那样,我已经添加了(x_compat = True)参数。但是,这根本没有给出我的x轴的刻度和刻度标签。我该如何解决?
我还通过这个尝试了matplotlib的第二种方式
import pandas as pd
import matplotlib.pyplot as plt
from matplotlib.dates import MonthLocator
%matplotlib inline
df = pd.read_csv('data.csv', index_col=0)
value = df.value
plt.figure(figsize=(15,10))
ax = value.plot(x_compat=True)
ax.xaxis.set_major_locator(MonthLocator(bymonthday=15))
ax.xaxis.set_major_formatter(plt.NullFormatter())
plt.show()
但是我仍然看不到月份中的刻度标签。它在x轴上没有任何作用。
答案,我应该先使用plt.figure(figsize=(15,10))
plt.plot(df.index, df.value)
plt.gca().xaxis.set_major_locator(MonthLocator(bymonthday=15))
plt.gca().xaxis.set_major_formatter(DateFormatter("%M"))
来转换df.index
。