Подтвердить что ты не робот

Как установить поля для фигуры matplotlib?

Я создаю экранную фигуру, которая имеет два подзаголовка: один - это изображение, а другой - график. Границы чрезвычайно велики вокруг фигур.

Как настроить поля вокруг фигур?


В большинстве вопросов, которые я искал, были задействованы сохранение изображений (bbox казался идеальным) и использование осей вместо подзаговоров для абсолютного позиционирования.

Вот код, который я использовал для создания фигуры:

def __init__(self, parent):
    wx.Panel.__init__(self, parent)
    ...

    self.figure, (self.picture, self.intensity) = \
        plt.subplots(nrows=2, figsize=(12, 5))
    self.figure.set_dpi(80)
    #self.figure.subplots_adjust(left=0.1, right=0.9, top=0.9, bottom=0.1)
    #self.picture.imshow(np.random.uniform()) #size=(5, 50)))
    self.intensity.plot(np.random.random()) #size=641))

    self.intensity.autoscale(axis='x', tight=True)
4b9b3361

Ответ 1

Посмотрите plt.tight_layout() или plt.subplots_adjust() или fig.savefig(bbox_inches='tight').

С помощью subplots_adjust вы можете настроить большинство параметров, а tight_layout() и bbox_inches='tight' более или менее полуавтоматичны.

Ответ 2

Вы также можете использовать plt.set(), с атрибутами, указанными в меню настройки графика, например. set (top = 0.82) и т.д.