Python 未显示我的系列的精确值的绘图

Python 未显示我的系列的精确值的绘图,python,pandas,Python,Pandas,我试图用它的值绘制我的熊猫系列,但在我的x轴上有错误的值。我在同一本工作簿上做过三次以上同样的事情。我做错了什么 S1=rog1.groupby('Date')['availabi'].mean() S1.index # output DatetimeIndex(['2018-05-10', '2018-06-10', '2018-07-10'], dtype='datetime64[ns]', name='Date', freq=None) 但当我决定把这片土地划出来的时候 plt.fig

我试图用它的值绘制我的熊猫系列,但在我的x轴上有错误的值。我在同一本工作簿上做过三次以上同样的事情。我做错了什么

S1=rog1.groupby('Date')['availabi'].mean()
S1.index
# output
DatetimeIndex(['2018-05-10', '2018-06-10', '2018-07-10'], 
dtype='datetime64[ns]', name='Date', freq=None)
但当我决定把这片土地划出来的时候

plt.figure(figsize=(10,4))
plt.plot(S1.index, S1)
下面是我得到的


y轴值很好。我不知道绘制的值来自哪里。我在这个系列中只有3行

问题是matplotlib自动检测x记号的数量和间距,以填充x轴,而不重叠标签,也不留下太多空白

我能想到的最简单的解决方法是: 1.创建图形和轴控制柄 2.在轴上绘制数据 3.手动设置xtick位置和标签

替换两行打印的代码:

fig, ax = plt.subplots(figsize=(10, 4))
S1.plot(ax=ax)
ax.set_xticks(S1.index);
ax.set_xticklabels(S1.index.strftime('%Y-%m-%d'));

我无法确保
S1
不是笔记本中其他地方调用的另一个变量。在同一个单元格中定义并调用它我不知道确切的错误是什么,但我认为如果在
plt.plt.plot之前添加
plt.xticks(S1.index,S1.index.date)
(…
,你应该得到你想要的for@ChrisS1是在groupby之后获得的系列。Plotting S1只打印值S1,而不是索引本身。这就是我也打印索引的原因。@Herc01,我对matplotlib的内部工作不太熟悉,所以可以肯定,但默认行为是自动选择一个合理的值输入数据的x记号数。您的数据框在索引中只有3个日期,并且您的图形大小足够大,可以提示matplotlib自动填充x记号,而不是仅使用3个。