我在 python 中绘图时遇到 x 刻度标签的问题

I have a problem with x tick labels in plotting in python

为什么xticklabels和真实的x_ticks不重合?

 A=[0.4533333333333333,
 0.6033333333333334,
 0.7033333333333335,
 0.59,
 0.49666666666666665,
 0.49666666666666665,
 0.4166666666666667,
 0.7600000000000001]

EB_A =[0.04800000000000001,
 0.06497800193279869,
 0.06003509868180174,
 0.05379449471770337,
 0.055139672522411476,
 0.06977298499632904,
 0.06328550572939434,
 0.04762818959864468]

currentNamesList = ['0','4h','6h','16h','24h','48h','4d','6d']
listOfSteps1=[0,4,6,16,24,48,96,144]
fig, ax = plt.subplots()
ax.plot(listOfSteps1, A,label= 'ATRA')
ax.errorbar(listOfSteps1, A, yerr = EB_A)
plt.xlabel('Time',fontsize=12)
plt.ylabel('Average Correlation' , fontsize=12)
ax.set_xticklabels(currentNamesList)
plt.legend(loc= 'upper left')
plt.tight_layout()
plt.show()

可以看出 xticklables 不正好在 listOfSteps1 上吗? 你知道为什么吗?

您需要更换:

ax.set_xticklabels(currentNamesList)

来自

plt.xticks(listOfSteps1, currentNamesList)

将名称与值匹配