Spec-Zone.ru › Matplotlib 3.8

matplotlib.layout_engine

Классы для выравнивания элементов в Figure.

Фигуры имеют свойство layout_engine, которое хранит подкласс LayoutEngine, определённого здесь (или None для отсутствия выравнивания). Во время отрисовки вызывается figure.get_layout_engine().execute(), цель которого обычно состоит в переупорядочении осей на фигуре для создания приятной компоновки. Это похоже на draw обратный вызов, но с двумя отличиями. Во-первых, при печати мы отключаем механизм выравнивания для окончательной отрисовки. Во-вторых, полезно знать механизм выравнивания во время создания фигуры. В частности, цветные шкалы создаются по-разному с различными механизмами выравнивания (по историческим причинам).

Matplotlib предоставляет два механизма выравнивания, TightLayoutEngine и ConstrainedLayoutEngine. Третьи стороны могут создавать собственные механизмы выравнивания, наследуясь от LayoutEngine.

classmatplotlib.layout_engine.ConstrainedLayoutEngine(*, h_pad=None, w_pad=None, hspace=None, wspace=None, rect=(0, 0, 1, 1), compress=False, **kwargs)[source]

Реализует управление геометрией constrained_layout. Подробности см. в руководстве по ограниченному выравниванию.

Инициализирует настройки constrained_layout.

Параметры:
h_pad, w_padfloat

Отступы вокруг элементов осей в дюймах. По умолчанию rcParams["figure.constrained_layout.h_pad"] (по умолчанию: 0.04167) и rcParams["figure.constrained_layout.w_pad"] (по умолчанию: 0.04167).

hspace, wspacefloat

Доля фигуры, выделяемая для пространства между осями. Они равномерно распределяются между промежутками между осями. Значение 0,2 для трёхстолбцовой компоновки имело бы промежуток 0,1 ширины фигуры между каждым столбцом. Если h/wspace < h/w_pad, то используются отступы. По умолчанию rcParams["figure.constrained_layout.hspace"] (по умолчанию: 0.02) и rcParams["figure.constrained_layout.wspace"] (по умолчанию: 0.02).

rectкортеж из 4 чисел с плавающей точкой

Прямоугольник в координатах фигуры, в котором выполняется ограниченное выравнивание (левый, нижний, ширина, высота), каждое от 0 до 1.

compressbool

Необходимо ли сдвигать оси, чтобы удалить пустое пространство между ними. Это полезно для простых сетчатых диаграмм с осями фиксированного аспекта (например, сетка изображений). См. Сетки осей с фиксированным соотношением сторон: «сжатая» компоновка.

propertyadjust_compatible

Возвращает булево значение, если механизм выравнивания совместим с subplots_adjust.

propertycolorbar_gridspec

Возвращает булево значение, если механизм выравнивания создаёт цветные шкалы с помощью gridspec.

execute(fig)[source]

Выполняет constrained_layout и перемещает и изменяет размеры осей соответственно.

Параметры:
figFigure для выполнения выравнивания.
get()[source]

Возвращает копию параметров для механизма выравнивания.

set(*, h_pad=None, w_pad=None, hspace=None, wspace=None, rect=None)[source]

Устанавливает отступы для constrained_layout.

Параметры:
h_pad, w_padfloat

Отступы вокруг элементов осей в дюймах. По умолчанию rcParams["figure.constrained_layout.h_pad"] (по умолчанию: 0.04167) и rcParams["figure.constrained_layout.w_pad"] (по умолчанию: 0.04167).

hspace, wspacefloat

Доля фигуры, выделяемая для пространства между осями. Они равномерно распределяются между промежутками между осями. Значение 0,2 для трёхстолбцовой компоновки имело бы промежуток 0,1 ширины фигуры между каждым столбцом. Если h/wspace < h/w_pad, то используются отступы. По умолчанию rcParams["figure.constrained_layout.hspace"] (по умолчанию: 0.02) и rcParams["figure.constrained_layout.wspace"] (по умолчанию: 0.02).

rectкортеж из 4 чисел с плавающей точкой

Прямоугольник в координатах фигуры, в котором выполняется ограниченное выравнивание (левый, нижний, ширина, высота), каждое от 0 до 1.

classmatplotlib.layout_engine.LayoutEngine(**kwargs)[source]

Базовый класс для движков макета Matplotlib.

Движок макета можно передать в фигуру при создании или в любое время с помощью set_layout_engine. После подключения к фигуре движок макета execute вызывается во время отрисовки draw, обеспечивая специальный хук во время отрисовки.

Примечание

Однако обратите внимание, что движки макета влияют на создание цветовых панелей, поэтому set_layout_engine следует вызывать до создания любых цветовых панелей.

В настоящее время существуют две особенности классов LayoutEngine, которые используются при работе с фигурой:

  • engine.colorbar_gridspec сообщает Figure.colorbar, нужно ли создавать

    оси с помощью метода gridspec (см. colorbar.make_axes_gridspec) или нет (см. colorbar.make_axes);

  • engine.adjust_compatible предотвращает запуск Figure.subplots_adjust, если он не совместим с движком макета.

Для реализации пользовательского LayoutEngine:

  1. переопределите _adjust_compatible и _colorbar_gridspec
  2. переопределите LayoutEngine.set для обновления self._params
  3. переопределите LayoutEngine.execute с вашей реализацией
propertyadjust_compatible

Возвращает булево значение, если движок макета совместим с subplots_adjust.

propertycolorbar_gridspec

Возвращает булево значение, если движок макета создаёт цветовые панели с использованием gridspec.

execute(fig)[source]

Выполняет макет на заданной фигуре fig.

get()[source]

Возвращает копию параметров для движка макета.

set(**kwargs)[source]

Устанавливает параметры для движка макета.

classmatplotlib.layout_engine.PlaceHolderLayoutEngine(adjust_compatible, colorbar_gridspec, **kwargs)[source]

Этот движок макета вообще не изменяет макет фигуры.

Цель этого LayoutEngine заключается в том, чтобы служить местодержателем, когда пользователь удаляет движок макета, чтобы убедиться, что несовместимый LayoutEngine не может быть установлен позже.

Parameters:
adjust_compatible, colorbar_gridspecbool

Разрешить PlaceHolderLayoutEngine отражать поведение того движка макета, который он замещает.

propertyadjust_compatible

Возвращает булево значение, если движок макета совместим с subplots_adjust.

propertycolorbar_gridspec

Возвращает булево значение, если движок макета создаёт цветовые панели с использованием gridspec.

execute(fig)[source]

Не делает ничего.

get()[source]

Возвращает копию параметров для движка макета.

set(**kwargs)[source]

Устанавливает параметры для движка макета.

END_OF_DOCUMENT_MARKER
classmatplotlib.layout_engine.TightLayoutEngine(*, pad=1.08, h_pad=None, w_pad=None, rect=(0, 0, 1, 1), **kwargs)[source]

Реализует управление геометрией tight_layout. Подробности см. в Руководстве по тугому макетированию.

Инициализирует движок tight_layout.

Параметры:
padfloat, по умолчанию: 1.08

Отступ между краем фигуры и краями подграфиков, как доля размера шрифта.

h_pad, w_padfloat

Отступ (высота/ширина) между краями смежных подграфиков. По умолчанию равен pad.

rectкортеж (слева, снизу, справа, сверху), по умолчанию: (0, 0, 1, 1).

Прямоугольник в нормализованных координатах фигуры, в который будут помещены подграфики (включая метки).

propertyadjust_compatible

Возвращает булево значение, если движок макета совместим с subplots_adjust.

propertycolorbar_gridspec

Возвращает булево значение, если движок макета создает цветовые шкалы с использованием gridspec.

execute(fig)[source]

Выполнить tight_layout.

Определяет параметры подграфиков, учитывая отступы, которые позволят меткам осей не накладываться друг на друга и на оси.

Параметры:
figFigure для выполнения макета.

См. также

figure.Figure.tight_layout
pyplot.tight_layout
get()[source]

Возвращает копию параметров для движка макета.

set(*, pad=None, w_pad=None, h_pad=None, rect=None)[source]

Установить отступы для tight_layout.

Параметры:
padfloat

Отступ между краем фигуры и краями подграфиков, как доля размера шрифта.

w_pad, h_padfloat

Отступ (ширина/высота) между краями смежных подграфиков. По умолчанию равен pad.

rectкортеж (слева, снизу, справа, сверху)

Прямоугольник в нормализованных координатах фигуры, в который будут помещены подграфики (включая метки).

© 2012–2023 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.8.4/api/layout_engine_api.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API