更改日期列中的刻度数

时间:2020-09-18 18:38:23

标签: python matplotlib

我可以在这段代码中添加些什么来更改表示要显示它的日期的x轴上的刻度数?

我只想打几分

plt.figure(figsize= (10,5))

plt.plot(AAPL['Date'], AAPL['Adj Close'], label = 'Apple')

plt.plot(AMZN['Date'], AMZN['Adj Close'], label = 'Amazon')

plt.plot(GOOG['Date'], GOOG['Adj Close'], label = 'Google')

plt.plot(MSFT['Date'], MSFT['Adj Close'], label = 'Microsoft')


plt.legend()
plt.show()

enter image description here

2 个答案:

答案 0 :(得分:1)

尝试一下:

start, end = plt.get_xlim()
plt.xaxis.set_ticks(np.arange(start, end, stepsize))

编辑:糟糕。看起来您可能需要在轴上调用get_xlim()。

axes = plt.gca() #gca = get current axes
start, end = axes.get_xlim()

答案 1 :(得分:1)

首先,您需要确保时间列类型为datetime,而不是str。在这种情况下,您应该通过pd.to_datetime()将其转换为datetime
然后,您可以使用ax.xaxis.set_major_locator()设置沿时间轴的刻度数。有关更多信息,请参见matplotlib.mdates
您可以以this answer为例。