如何更改 matplot.pyplot 中的 x 轴刻度?

How to change x-axis ticks in matplot.pyplot?

我有这些代码行可以生成您看到的简单图表。我需要原样的图表,但是,我需要用标签列表中包含的一年中的月份替换数字刻度。 7 月份的刻度线应该大致位于中间位置。不需要毫米精度。重要的是正确设置标签。我该如何解决这个问题? 可能,如果轴太小,4月和10月也可以从列表中删除。

import numpy as np
import matplotlib.pyplot as plt
from scipy.stats import norm
import statistics
  
# Plot between -10 and 10 with .001 steps.
x_axis = np.arange(-21, 21, 1)
#print(x_axis)
  
# Calculating mean and standard deviation
mean = statistics.mean(x_axis)
sd = 0.5*statistics.stdev(x_axis)
labels =["Apr","May","Jun","Jul","Aug","Sep","Oct"]

plt.plot(x_axis, norm.pdf(x_axis, mean, sd),'ro',color='b',linewidth=3)
plt.plot(x_axis, norm.pdf(x_axis, mean-0.3, sd-0.3),color='r',linewidth=2.5)
plt.show()

您可以使用 plt.xticks:

设置 xticks 及其标签
plt.plot(x_axis, norm.pdf(x_axis, mean, sd),'o', color='b',linewidth=3)
plt.plot(x_axis, norm.pdf(x_axis, mean-0.3, sd-0.3),color='r',linewidth=2.5)
plt.xticks(np.linspace(-20, 20, len(labels)), labels)
plt.show()