我如何在我所有的子图上应用xticks旋转?



我有点困在这个,我在谷歌上搜索答案,但我找不到它。

我想将xticks与子图旋转45度。我知道如何处理一个正常的情节:

plt.xticks(rotation = 45)

但是当我把这个放进我的情节脚本时,什么都没有发生。我真的很想知道我怎样才能把它同时应用到我所有的子情节上。

这是我的代码:

plt.figure()
fig, axs = plt.subplots(1, 3, sharey=True, tight_layout=True)
axs[0].set_title("Classic")
axs[1].set_title("Theta")
axs[2].set_title("Vector")

axs[0].plot(df.time,df.classic, label = 'Classic', color = 'blue')
axs[1].plot(df.time,df.theta, label = 'Theta', color = 'green')
axs[2].plot(df.time,df.vector, label = 'Vector', color = 'red')
plt.xticks(rotation = 45)
plt.suptitle('Core computations',fontsize=20)
plt.legend()
plt.show()

尝试使用setp()函数设置某个参数,本例中rotation:

ax = plt.gca()
plt.setp(ax.get_xticklabels(), rotation=45)

你试过吗?

ax = plt.gca()
ax.tick_params(axis='x', labelrotation = 45)

对于所有子图,您也可以尝试:

for ax in fig.axes:
matplotlib.pyplot.sca(ax)
plt.xticks(rotation=90)

最新更新