python - Xaxis 标签与数据点不匹配 - Pandas/Matplotlib

标签 python matplotlib pandas

我想绘制 Pandas 中的时间序列。我在 TimeSeries 中有 336 条记录。我只想在 x 轴上每 20 个左右的数据点显示一次日期/时间(TimeSeries 的索引)。

这是我尝试执行此操作的方法:

stats.plot()
ax.set_xticklabels(stats.index, rotation=45 ) 
ax.xaxis.set_major_locator(MultipleLocator(20))
ax.xaxis.set_minor_locator(NullLocator())
ax.yaxis.set_major_locator(MultipleLocator(.075))
draw() 

我的 x 轴显示正确的标签数量 (18),但这些是该系列中的前 18 个,它们与图中的数据点不正确对应。

最佳答案

问题是您正在使用set_xticklabels,它设置刻度标签的值独立于数据。刻度线从您传入的列表中按顺序标记。

由此我无法真正说出您想要做什么,但是您看到的行为是库的“正确”行为(它完全按照您的指示进行操作,但这不是您想要的) 想要它做)。

关于python - Xaxis 标签与数据点不匹配 - Pandas/Matplotlib,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18859160/

相关文章:

python - Paramiko 相当于管道控件和输入/输出管道

python - 编写一个函数,返回并打印列中所有值中的最大值

python - Pandas 数据帧 : difference between rolling and expanding function

python - 方程对同一个变量返回不同的值

python - 在 matplotlib 图例中分隔两个字符串

python - 某些列的唯一值,DF pandas

python - 给定该点的树索引,如何检索 kdtree 中该点的坐标?

python - mypy 在导入子模块 : Module has no attribute 时出错

python - django css 和 js 文件在 heroku 上进行 gzip 压缩

python - matplotlib 图中的刻度标签文本和频率