如何在 matplotlib 中设置最大 x-ticks 数

How to set a maximum number of x-ticks in matplotlib

我正在尝试在 matplotlib 中绘制两个长时间序列。因为我不需要任何子图,所以我没有使用 figure.add_subplot() 方法。

fig = plt.figure()
plt.plot(series1)
plt.plot(series2)
plt.xlabel('Date')
plt.ylabel("Values")
plt.legend(loc='best')
plt.title(Plot title)
fig.autofmt_xdate()
plt.savefig("fig.png", format="png")

然而,上述格式适用于一些短系列,而对于长系列,即使使用 autofmt_xdate() 命令旋转它们,x 刻度线也会重叠很多。我在使用子图时知道 ax.set_major_locator() 解决方案,但在使用 plt.figure().

时我无法找到类似的解决方案

您可以使用以下方法获取轴的实例:

ax = plt.gca()

然后,就可以使用平时在轴上使用的方法了:

ax.xaxis.set_major_locator(....)