我正在尝试在 python 中创建一个包含 6 个子图的图形,但我遇到了问题。这是我的代码的简化版本:
import matplotlib.pyplot as plt
import numpy
g_width = 200
g_height = 200
data = numpy.zeros(g_width*g_height).reshape(g_height,g_width)
ax1 = plt.subplot(231)
im1 = ax1.imshow(data)
ax2 = plt.subplot(232)
im2 = ax2.imshow(data)
ax3 = plt.subplot(233)
im3 = ax3.imshow(data)
ax0 = plt.subplot(234)
im0 = ax0.imshow(data)
ax4 = plt.subplot(235)
im4 = ax4.imshow(data)
ax5 = plt.subplot(236)
ax5.plot([1,2], [1,2])
plt.show()
上图有 5 个“基于 imshow”的子图和一个基于简单数据的子图。有人可以向我解释为什么最后一个子图的框与其他子图的大小不同吗?如果我用“基于 imshow”的子图替换最后一个子图,问题就会消失。为什么会这样?我该如何解决?