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настройки.- Parameters:
-
- 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
-
Смещать оси, чтобы удалить пустое пространство между ними. Это полезно для простых сетчатых макетов с фиксированными осями (например, сетки изображений). См. Сетки осей с фиксированным соотношением сторон: макет "compressed".
- propertyadjust_compatible
-
Возвращает boolean, если движок макета совместим с
subplots_adjust.
- propertycolorbar_gridspec
-
Возвращает boolean, если движок макета создаёт цветовые шкалы с использованием gridspec.
- execute(fig)[source]
-
Выполнить constrained_layout и соответствующим образом переместить и изменить размер осей.
- Parameters:
-
-
fig
Figureдля выполнения макета.
-
fig
- get()[source]
-
Возвращает копию параметров движка макета.
- set(*, h_pad=None, w_pad=None, hspace=None, wspace=None, rect=None)[source]
-
Установить отступы для constrained_layout.
- Parameters:
-
- 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.
- классmatplotlib.layout_engine.LayoutEngine(**kwargs)[source]
-
Базовый класс для движков макета Matplotlib.
Двигатель макета может быть передан в фигуру при создании или в любое время с помощью
set_layout_engine. После подключения к фигуре, двигатель макетаexecuteвызывается во время отрисовкиdraw, предоставляя специальную функцию отрисовки.Примечание
Однако обратите внимание, что движки макета влияют на создание цветовых баров, поэтому
set_layout_engineследует вызвать до создания каких-либо цветовых баров.В настоящее время существуют две свойства классов
LayoutEngine, которые используются при манипулировании фигурой:-
-
engine.colorbar_gridspecсообщаетFigure.colorbar, использовать ли метод сетки (см.colorbar.make_axes_gridspec) или нет (см.colorbar.make_axes);
-
-
-
engine.adjust_compatibleпредотвращает вызовFigure.subplots_adjust, если он не совместим с движком макета.
-
Чтобы реализовать пользовательский
LayoutEngine:- переопределите
_adjust_compatibleи_colorbar_gridspec - переопределите
LayoutEngine.setдля обновления self._params - переопределите
LayoutEngine.executeсвоей реализацией
- свойствоadjust_compatible
-
Возвращает булево значение, если движок макета совместим с
subplots_adjust.
- свойствоcolorbar_gridspec
-
Возвращает булево значение, если движок макета создает цветовые бары с использованием сетки.
- execute(fig)[source]
-
Выполняет макетирование на заданной фигуре fig.
- get()[source]
-
Возвращает копию параметров для двигателя макета.
- set(**kwargs)[source]
-
Устанавливает параметры для двигателя макета.
-
- классmatplotlib.layout_engine.PlaceHolderLayoutEngine(adjust_compatible, colorbar_gridspec, **kwargs)[source]
-
Этот движок макета вообще не изменяет макет фигуры.
Цель этого
LayoutEngine— выступать в качестве заполнителя, когда пользователь удаляет движок макета, чтобы убедиться, что несовместимыйLayoutEngineне может быть установлен позже.- Параметры:
-
- adjust_compatible, colorbar_gridspecbool
-
Разрешить PlaceHolderLayoutEngine копировать поведение заменяемого движка макета.
- свойствоadjust_compatible
-
Возвращает булево значение, если движок макета совместим с
subplots_adjust.
- свойствоcolorbar_gridspec
-
Возвращает булево значение, если движок макета создаёт цветовые бары с использованием сетки.
- execute(fig)[source]
-
Ничего не делает.
- get()[source]
-
Возвращает копию параметров для двигателя макета.
- set(**kwargs)[source]
-
Устанавливает параметры для двигателя макета.
- classmatplotlib.layout_engine.TightLayoutEngine(*, pad=1.08, h_pad=None, w_pad=None, rect=(0, 0, 1, 1), **kwargs)[source]
-
Реализует управление геометрией
tight_layout. Подробнее см. Руководство по 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.
Определяет параметры подграфиков, учитывая отступы, которые позволят меткам осей не накладываться друг на друга.
- Параметры:
-
-
fig
Figureдля выполнения макета.
-
fig
- 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.7.5/api/layout_engine_api.html