我正在尝试在顶部保存带有额外图像的图形。 但是Python只能保存底部数字。 我有:
fig = plt.figure(figsize=(8, 6))
ax = fig.add_subplot(111)
ax.plot(...)
...
ax_im = fig.add_axes([0.1, 1.0, 1, 1])
ax_im.set_xticks([])
ax_im.set_yticks([])
ax.imshow(...)
...
fig.savefig('image.png')
和Matplotlib仅保存与ax
轴相关的数字。在iPython笔记本中
输出很好,它显示了两个数字,所以,我不知道发生了什么。
答案 0 :(得分:1)
尝试这样的事情
ax_im = fig.add_axes([0.1, 0.2, 0.5, 0.5], label='axes1')
解释是你的add_axes
的第二个参数是1.0。这指定了图的顶部Axes
的底部。
以下示例适用于我:
import pylab as plt
fig = plt.figure(figsize=(8, 6))
ax = fig.add_subplot(212)
ax.plot(range(3))
ax_im = fig.add_axes([0.3, 0.5, 0.5, 0.4])
ax_im.set_xticks([])
ax_im.set_yticks([])
plt.show()
甚至更容易,使用add_subplot
两次:
import pylab as plt
fig = plt.figure(figsize=(8, 6))
ax = fig.add_subplot(212)
ax.plot(range(3))
ax_im = fig.add_subplot(211)
ax_im.plot(range(3), 'o--')
ax_im.set_xticks([])
ax_im.set_yticks([])
plt.show()