我正在寻找一种在一组轴上画框的简单方法...是(是的轴-怪怪matplotlib愚蠢的术语)。理想情况下,我想轻松访问所有轴的右下角和右上角坐标,并找到各自的最小值和最大值,然后将这两个坐标用作矩形面片的左下坐标和右上坐标。但是据我所知,API不提供这些功能。
您能想到一种简单且可重复使用的方法吗?
这里是我现在的照片。该框不能均匀地框住两个轴:
将matplotlib.pyplot导入为plt
from matplotlib import patches
import numpy as np
fig = plt.figure()
X, Y = np.mgrid[-1:1:.1, -1:1:.1]
Z = X+Y
ax1 = fig.add_subplot(311)
ax2 = fig.add_subplot(313)
ax1.contourf(X, Y, Z)
ax2.contourf(X, Y, -Z)
frame = patches.Rectangle(
(-.1,-.1), 1.2, 3.2, transform=ax2.transAxes, fill=True, zorder=0
)
fig.patches.append(frame)
fig.show()