有没有办法隐藏所有子图的轴?

Rak*_*sha 2 python matplotlib

我试图并排绘制两个图像,而没有任何像网格线和轴这样的垃圾。我发现您可以使用 关闭所有网格线plt.rcParams['axes.grid'] = False,但无法确定轴是否有类似的选项。我知道您可以使用,plt.axis('off')但是您必须单独为每个子图指定它。

plt.rcParams['axes.grid'] = False

plt.subplot(1, 2, 1)
plt.imshow(img1)
plt.subplot(1, 2, 2)
plt.imshow(img2)

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

Imp*_*est 5

轴的不同组件都有各自的 rc 参数。因此,要关闭“一切”,您需要将它们全部设置为 False.

import numpy as np
import matplotlib.pyplot as plt

rc = {"axes.spines.left" : False,
      "axes.spines.right" : False,
      "axes.spines.bottom" : False,
      "axes.spines.top" : False,
      "xtick.bottom" : False,
      "xtick.labelbottom" : False,
      "ytick.labelleft" : False,
      "ytick.left" : False}
plt.rcParams.update(rc)

img = np.random.randn(100).reshape(10,10)

fig, (ax, ax2) = plt.subplots(ncols=2)

ax.imshow(img)
ax2.imshow(img)

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

在此处输入图片说明