Положите коробку вокруг набора осей - PullRequest
0 голосов
/ 23 декабря 2018

Я ищу простой способ нарисовать прямоугольник вокруг набора осей ... es (да, axeses --- вините глупую терминологию matplotlib).В идеале я хотел бы легко получить доступ к нижним правым и верхним правым угловым координатам всех осей и найти соответствующие минимальные и максимальные значения, а затем использовать эти две координаты в качестве нижних левых и верхних правых координат прямоугольного патча.Но, насколько я могу судить, API не предоставляет эти функции.

Можете ли вы придумать простой и многократно используемый способ сделать это?

Вот изображение того, что я правсейчас.Рамка неравномерно обрамляет две оси:

import 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()

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...