如何从子图中的一个轴上删除标签?
How do I remove labels from one axis in a subplot?
我在 MacOS 上使用 Python 3.9。很快,我必须制作一个包含 4 个子图的图,它们共享轴。代码如下所示:
#take some data
gs = gridspec.GridSpec(2, 2, height_ratios = [3, 1])
ax0 = plt.subplot(gs[0])
#plot data, make legend, etc.
ax2 = plt.subplot(gs[2], sharex = ax0)
#plot data, make legend, etc.
#take more data
ax1 = plt.subplot(gs[1], sharey = ax0)
#plot data, make legend, etc.
ax3 = plt.subplot(gs[3], sharex = ax1, sharey = ax2)
#plot data, make legend, etc.
plt.show()
如您所见,一些图彼此共享一个轴。问题是在 x 轴上一切都很好,而在 y 轴上却不是(见图)。切入正题:如何删除右图垂直轴上的数字而不是左侧的数字?我看过很多帖子,其中的问题是用
之类的东西解决的
ax.set_yticklabels([])
但这也从左侧图中删除了数字。
试试这个:
ax1.tick_params('y', labelleft=False)
我在 MacOS 上使用 Python 3.9。很快,我必须制作一个包含 4 个子图的图,它们共享轴。代码如下所示:
#take some data
gs = gridspec.GridSpec(2, 2, height_ratios = [3, 1])
ax0 = plt.subplot(gs[0])
#plot data, make legend, etc.
ax2 = plt.subplot(gs[2], sharex = ax0)
#plot data, make legend, etc.
#take more data
ax1 = plt.subplot(gs[1], sharey = ax0)
#plot data, make legend, etc.
ax3 = plt.subplot(gs[3], sharex = ax1, sharey = ax2)
#plot data, make legend, etc.
plt.show()
如您所见,一些图彼此共享一个轴。问题是在 x 轴上一切都很好,而在 y 轴上却不是(见图)。切入正题:如何删除右图垂直轴上的数字而不是左侧的数字?我看过很多帖子,其中的问题是用
之类的东西解决的ax.set_yticklabels([])
但这也从左侧图中删除了数字。
试试这个:
ax1.tick_params('y', labelleft=False)