matplotlib:在子图中设置 sharex 后刻度标签消失

Hey*_*u L 5 python matplotlib visible

使用sharexsharey在子图中,刻度标签会消失,如何将它们转回来?下面是一个刚刚从官网复制过来的例子:

fig, axs = plt.subplots(2, 2, sharex=True, sharey=True)
axs[0, 0].plot(x)

plt.show()
Run Code Online (Sandbox Code Playgroud)

我们将看到: 在此处输入图片说明

正如我们所看到的,右上角的图没有任何刻度标签,其他的也缺少一些标签,因为轴是共享的。我想我应该使用类似的东西plt.setp(ax.get_xticklabels(), visible=True),但它不起作用。

Mat*_*ieu 7

您可以使用tick_params()来设计绘图:

f, ax = plt.subplots(2, 2, sharex=True, sharey=True)

for a in f.axes:
    a.tick_params(
    axis='x',           # changes apply to the x-axis
    which='both',       # both major and minor ticks are affected
    bottom=True,
    top=False,
    labelbottom=True)    # labels along the bottom edge are on

plt.show()
Run Code Online (Sandbox Code Playgroud)