matplotlib.figure
matplotlib.figure реализует следующие классы:
Figure-
Основной
Artist, который содержит все элементы графика. Многие методы реализованы вFigureBase. SubFigure-
Логическая фигура внутри фигуры, обычно добавляемая в фигуру (или родительский
SubFigure) с помощью методовFigure.add_subfigureилиFigure.subfigures(временный API v3.4).
Фигуры обычно создаются с помощью методов pyplot figure, subplots и subplot_mosaic.
fig, ax = plt.subplots(figsize=(2, 2), facecolor='lightskyblue',
layout='constrained')
fig.suptitle('Figure')
ax.set_title('Axes', loc='left', fontstyle='oblique', fontsize='medium')
(Source code, 2x.png, png)
В некоторых ситуациях требуется непосредственное создание экземпляра класса Figure, обычно внутри какого-либо приложения (см. Встраивание Matplotlib в графические пользовательские интерфейсы для списка примеров). Более подробную информацию о фигурах можно найти в Вступление к фигурам.
Рисунок
Класс Figure
Основной контейнер для всех элементов графика. |
Добавление осей и подрисунков
Добавить | |
Добавить | |
Добавить набор подрисунков на этот рисунок. | |
Создать макет осей на основе ASCII-арта или вложенных списков. | |
API низкого уровня для создания | |
Список осей на рисунке. | |
Список осей на рисунке. | |
Удалить | |
Добавить набор подрисунков на этот рисунок или подрисунок. | |
Добавить |
Сохранение
Сохранить текущий рисунок в виде изображения или векторной графики в файл. |
Аннотирование
Добавить шкалу цвета к графику. | |
Поместить легенду на рисунке. | |
Добавить текст на рисунок. | |
Добавить центральный заголовок ко всему рисунку. | |
Возвращает заголовок ко всему рисунку как строку или пустую строку, если он не задан. | |
Добавить центральную подпись оси X ко всему рисунку. | |
Возвращает подпись оси X ко всему рисунку как строку или пустую строку, если она не задана. | |
Добавить центральную подпись оси Y ко всему рисунку. | |
Возвращает подпись оси Y ко всему рисунку как строку или пустую строку, если она не задана. | |
Выравнивает подписи осей x и y подрисунков в строке или столбце подрисунков соответственно, если выравнивание подписей выполняется автоматически (т. е. положение подписи не задано вручную). | |
Выравнивает подписи оси x подрисунков в той же строке подрисунков, если выравнивание подписей выполняется автоматически (т. е. положение подписи не задано вручную). | |
Выравнивает подписи оси y подрисунков в том же столбце подрисунков, если выравнивание подписей выполняется автоматически (т. е. положение подписи не задано вручную). | |
Выравнивает заголовки подрисунков в той же строке подрисунков, если выравнивание заголовков выполняется автоматически (т. е. положение заголовка не задано вручную). | |
Метки даты часто перекрываются, поэтому полезно их повернуть и выровнять по правому краю. |
Геометрия рисунка
Установить размер рисунка в дюймах. | |
Возвращает текущий размер рисунка в дюймах. | |
Установить высоту рисунка в дюймах. | |
Возвращает высоту рисунка в дюймах. | |
Установить ширину рисунка в дюймах. | |
Возвращает ширину рисунка в дюймах. | |
Разрешение в точках на дюйм. | |
Установить разрешение рисунка в точках на дюйм. | |
Установить разрешение рисунка в точках на дюйм. |
Макет подграфиков
Настройка параметров макета подграфиков. | |
Указание движка макета для данной фигуры. | |
Отсоветованные или устаревшие
Настройка отступов между и вокруг подграфиков. | |
[Устаревшее] Указание, вызывать ли и как | |
Возвращает, вызывается ли | |
[Устаревшее] Указание, использовать ли | |
Возвращает, используется ли ограниченное расположение. | |
[Устаревшее] Установка отступов для | |
[Устаревшее] Получение отступов для |
Интерактивное
См. также
Блокирующий вызов для взаимодействия с фигурой. | |
Всякий раз, когда состояние оси меняется, вызывается | |
Блокирующий вызов для взаимодействия с фигурой. | |
Обработка события выделения. |
Изменение внешнего вида
Указание видимости фонового элемента фигуры, т. е. будет ли отрисовываться фон фигуры. | |
Возвращает видимость фонового элемента фигуры, т. е. будет ли отрисовываться фон фигуры. | |
Установка ширины линии прямоугольника фигуры. | |
Получение ширины линии прямоугольника фигуры. | |
Установка цвета заполнения прямоугольника фигуры. | |
Получение цвета заполнения прямоугольника фигуры. | |
Установка цвета границы прямоугольника фигуры. | |
Получение цвета границы прямоугольника фигуры. |
Добавление и получение элементов
Добавление | |
Получение списка элементов, содержащихся в фигуре. | |
Добавление нереконструированного изображения к фигуре. |
Получение и изменение состояния
См. также
Очистить рисунок. | |
Получить текущие оси. | |
Установить текущие оси в a и вернуть a. | |
Возвращает (сжатую) область границ рисунка в дюймах. | |
Получить область границ элемента в пространстве отображения. | |
Если используется графический бэкенд с pyplot, отобразить окно рисунка. | |
Установить холст, содержащий рисунок | |
Отрисовать элемент (и его потомков) с помощью заданного рендерера. | |
Отрисовать рисунок без вывода. | |
Отрисовать только |
Подрисунок
В Matplotlib есть понятие SubFigure, которое представляет собой логическую фигуру внутри родительской Figure. У него много таких же методов, как и у родительского. Смотрите Вложенные макеты осей.
(Source code, 2x.png, png)
Класс SubFigure
Логическая фигура, которую можно разместить внутри фигуры. |
Добавление осей и подрисунков
Добавить | |
Добавить | |
Добавить набор подрисунков в эту фигуру. | |
Создать макет осей на основе ASCII-арта или вложенных списков. | |
API низкого уровня для создания | |
Удалить | |
Добавить | |
Добавить набор подрисунков в эту фигуру или подрисунок. |
Аннотация
Добавить шкалу цвета к графику. | |
Разместить легенду на рисунке. | |
Добавить текст к рисунку. | |
Добавить центрированный заголовок к рисунку. | |
Возвращает заголовок как строку или пустую строку, если он не задан. | |
Добавить центрированный суффиксный подпись X оси к рисунку. | |
Возвращает суффиксную подпись X оси как строку или пустую строку, если она не задана. | |
Добавить центрированный суффиксный подпись Y оси к рисунку. | |
Возвращает суффиксную подпись Y оси как строку или пустую строку, если она не задана. | |
Выравнивать подписи осей X и Y подрисунков в той же строке или столбце (соответственно), если выравнивание подписей выполняется автоматически (т.е. позиция подписи не задается вручную). | |
Выравнивать подписи оси X подрисунков в той же строке подрисунков, если выравнивание подписей выполняется автоматически (т.е. позиция подписи не задается вручную). | |
Выравнивать подписи оси Y подрисунков в том же столбце подрисунков, если выравнивание подписей выполняется автоматически (т.е. позиция подписи не задается вручную). | |
Выравнивать заголовки подрисунков в той же строке подрисунков, если выравнивание заголовков выполняется автоматически (т.е. позиция заголовка не задается вручную). |
Добавление и получение элементов
Добавить | |
Получить список элементов, содержащихся в фигуре. |
Изменение внешнего вида
Установите видимость фоновой области фигуры, т.е. будет ли отрисовываться фон фигуры. | |
Возвращает видимость фоновой области фигуры, т.е. будет ли отрисовываться фон фигуры. | |
Устанавливает ширину линии прямоугольника фигуры. | |
Возвращает ширину линии прямоугольника фигуры. | |
Устанавливает цвет заливки прямоугольника фигуры. | |
Возвращает цвет заливки прямоугольника фигуры. | |
Устанавливает цвет границы прямоугольника фигуры. | |
Возвращает цвет границы прямоугольника фигуры. |
Пробросы
Устанавливает разрешение родительской фигуры в точках на дюйм. | |
Возвращает разрешение родительской фигуры в точках на дюйм в виде числа с плавающей точкой. |
Класс-родитель FigureBase
- classmatplotlib.figure.FigureBase(**kwargs)[source]
-
Базовый класс для
FigureиSubFigure, содержащий методы добавления элементов на график или подграфик, создания осей и т.д.- add_artist(artist, clip=False)[source]
-
Добавляет элемент
Artistна график.Обычно элементы добавляются к объектам
Axesс помощьюAxes.add_artist; этот метод можно использовать в редких случаях, когда необходимо добавить элементы непосредственно к фигуре.- Параметры:
-
-
artist
Artist -
Элемент
Artistдля добавления на график. Если у добавленного элемента нет предварительно установленного преобразования, его преобразование будет установлено вfigure.transSubfigure. - clipbool, по умолчанию: False
-
Указывает, следует ли обрезать добавленный элемент по области фигуры.
-
artist
- Возвращает:
-
Artist-
Добавленный элемент.
- add_axes(*args, **kwargs)[source]
-
Добавляет ось
Axesна график.Подписи:
add_axes(rect, projection=None, polar=False, **kwargs) add_axes(ax)
- Параметры:
-
- rectкортеж (left, bottom, width, height)
-
Размеры (left, bottom, width, height) новой
Axes. Все значения заданы в долях ширины и высоты фигуры. - projection{None, 'aitoff', 'hammer', 'lambert', 'mollweide', 'polar', 'rectilinear', str}, optional
-
Тип проекции для
Axes. str — имя пользовательской проекции, см.projections. По умолчанию None соответствует проекции 'rectilinear'. - polarbool, по умолчанию: False
-
Если True, эквивалентно projection='polar'.
-
axes_classподкласс
Axes, optional -
Подкласс
axes.Axes, который создаётся. Этот параметр несовместим с projection и polar. См. axisartist для примеров. -
sharex, sharey
Axes, optional -
Используйте общие оси x или y с помощью sharex и/или sharey. Ось будет иметь одинаковые пределы, деления и масштаб с осью общей оси.
- labelstr
-
Метка для возвращаемой оси.
- Возвращает:
-
-
Axes, или подклассAxes -
Тип возвращаемого класса оси зависит от используемой проекции. Это
Axes, если используется прямоугольная проекция, иprojections.polar.PolarAxes, если используется полярная проекция.
-
- Другие параметры:
-
- **kwargs
-
Этот метод также принимает ключевые параметры для возвращаемого класса оси. Ключевые параметры для класса прямоугольной оси
Axesможно найти в следующей таблице, но также могут быть другие ключевые параметры, если используется другая проекция, см. фактический класс оси.
Свойство
Описание
{'box', 'datalim'}
функция фильтра, которая принимает массив float (m, n, 3) и значение dpi, и возвращает массив (m, n, 3) и два смещения от нижнего левого угла изображения
скаляр или None
(float, float) или {'C', 'SW', 'S', 'SE', 'E', 'NE', ...}
bool
{'auto', 'equal'} или float
bool
неизвестно
неизвестно
Callable[[Axes, Renderer], Bbox]
bool или 'line'
float или None
BboxBaseили Nonebool
Patch или (Path, Transform) или None
facecolorили fcbool или "auto"
bool
str
bool
объект
bool
bool
неизвестно
список
AbstractPathEffectNone или bool или float или вызываемый объект
[left, bottom, width, height] или
Bboxfloat или None
bool
(scale: float, length: float, randomness: float)
bool или None
неизвестно
str
str
bool
(lower: float, upper: float)
str
(left: float, right: float)
число, больше -0,5
неизвестно
неизвестно
неизвестно
(нижняя граница: число, верхняя граница: число)
строка
(нижняя граница: число, верхняя граница: число)
число, больше -0,5
неизвестно
неизвестно
неизвестно
число с плавающей точкой
Примечания
В редких случаях
add_axesможет быть вызван с одним аргументом, экземпляром Axes, уже созданным в текущей фигуре, но не в списке Axes фигуры.Примеры
Некоторые простые примеры:
rect = l, b, w, h fig = plt.figure() fig.add_axes(rect) fig.add_axes(rect, frameon=False, facecolor='g') fig.add_axes(rect, polar=True) ax = fig.add_axes(rect, projection='polar') fig.delaxes(ax) fig.add_axes(ax)
- add_gridspec(nrows=1, ncols=1, **kwargs)[source]
-
API низкого уровня для создания
GridSpec, у которого эта фигура является родительской.Это API низкого уровня, позволяющий создать сетку и впоследствии добавить подграфики на основе этой сетки. Большинству пользователей не нужно такой свободы, и они должны использовать методы высокого уровня
subplotsилиsubplot_mosaic.- Параметры:
-
- nrowsint, по умолчанию: 1
-
Количество строк в сетке.
- ncolsint, по умолчанию: 1
-
Количество столбцов в сетке.
- Возвращает:
-
GridSpec
- Другие параметры:
-
- **kwargs
-
Ключевые аргументы передаются в
GridSpec.
См. также
Примеры
Добавление подграфика, занимающего две строки:
fig = plt.figure() gs = fig.add_gridspec(2, 2) ax1 = fig.add_subplot(gs[0, 0]) ax2 = fig.add_subplot(gs[1, 0]) # spans two rows: ax3 = fig.add_subplot(gs[:, 1])
- add_subfigure(subplotspec, **kwargs)[source]
-
Добавление
SubFigureк фигуре в качестве части расположения подграфиков.- Параметры:
-
-
subplotspec
gridspec.SubplotSpec -
Определяет область в родительской сетке, где будет размещен подграфик.
-
subplotspec
- Возвращает:
-
SubFigure
- Другие параметры:
-
- **kwargs
-
Передаются в объект
SubFigure.
См. также
- add_subplot(*args, **kwargs)[source]
-
Добавление
Axesк фигуре в качестве части подграфика.Варианты вызова:
add_subplot(nrows, ncols, index, **kwargs) add_subplot(pos, **kwargs) add_subplot(ax) add_subplot()
- Параметры:
-
-
*argsint, (int, int, index), или
SubplotSpec, по умолчанию: (1, 1, 1) -
Положение подграфика, описываемое одним из:
- Тремя целыми числами (nrows, ncols, index). Подграфик займёт позицию index на сетке с nrows строками и ncols столбцами. index начинается с 1 в верхнем левом углу и увеличивается вправо. index также может быть кортежем из двух элементов, задающим (first, last) индексы подграфика (1-основанные, включающие last), например,
fig.add_subplot(3, 1, (1, 2))создаёт подграфик, занимающий верхние 2/3 фигуры. - Трехзначным целым числом. Цифры интерпретируются как если бы они были заданы отдельно как три однозначных целых числа, т.е.
fig.add_subplot(235)эквивалентноfig.add_subplot(2, 3, 5). Обратите внимание, что это можно использовать только если количество подграфиков не превышает 9. SubplotSpec.
В редких случаях
add_subplotможет быть вызван с одним аргументом — экземпляром подграфика Axes, уже созданным в текущей фигуре, но не в списке Axes фигуры. - Тремя целыми числами (nrows, ncols, index). Подграфик займёт позицию index на сетке с nrows строками и ncols столбцами. index начинается с 1 в верхнем левом углу и увеличивается вправо. index также может быть кортежем из двух элементов, задающим (first, last) индексы подграфика (1-основанные, включающие last), например,
- projection{None, 'aitoff', 'hammer', 'lambert', 'mollweide', 'polar', 'rectilinear', str}, необязательно
-
Тип проекции подграфика (
Axes). str — имя пользовательской проекции, см.projections. По умолчанию None означает проекцию 'rectilinear'. - polarbool, по умолчанию: False
-
Если True, эквивалентно projection='polar'.
-
axes_classподкласс
Axes, необязательно -
Подкласс
axes.Axes, который подлежит созданию. Этот параметр несовместим с projection и polar. См. axisartist для примеров. -
sharex, sharey
Axes, необязательно -
Поделиться осью x или y с sharex и/или sharey. Ось будет иметь те же пределы, деления и масштаб, что и ось у совмещаемого Axes.
- labelstr
-
Метка для возвращаемого Axes.
-
*argsint, (int, int, index), или
- Возвращаемое значение:
-
Axes-
Axes подграфика. Возвращаемый Axes может быть экземпляром подкласса, например,
projections.polar.PolarAxesдля полярных проекций.
- Другие параметры:
-
- **kwargs
-
Этот метод также принимает ключевые аргументы для базового класса возвращаемого Axes; за исключением аргумента figure. Ключевые аргументы для прямолинейного базового класса
Axesможно найти в следующей таблице, но могут быть и другие ключевые аргументы, если используется другая проекция.
Свойство
Описание
{'box', 'datalim'}
функция фильтра, которая принимает массив float (m, n, 3) и значение dpi, а возвращает массив (m, n, 3) и два смещения от нижнего левого угла изображения
скаляр или None
(число, число) или {'C', 'SW', 'S', 'SE', 'E', 'NE', ...}
логическое значение
{'auto', 'equal'} или число
логическое значение
неизвестно
неизвестно
Callable[[Axes, Renderer], Bbox]
логическое значение или 'line'
число или None
BboxBaseили Noneлогическое значение
Patch или (Path, Transform) или None
facecolorили fcлогическое значение или "auto"
логическое значение
строка
логическое значение
объект
логическое значение
логическое значение
неизвестно
список
AbstractPathEffectNone или логическое значение или число или вызываемый объект
[слева, снизу, ширина, высота] или
Bboxчисло или None
логическое значение
(масштаб: число, длина: число, случайность: число)
логическое значение или None
неизвестно
строка
строка
логическое значение
(нижняя: число, верхняя: число)
строка
(левый: число, правый: число)
число больше -0,5
неизвестно
неизвестно
неизвестно
(нижняя граница: число, верхняя граница: число)
строка
(нижняя граница: число, верхняя граница: число)
число больше -0,5
неизвестно
неизвестно
неизвестно
число с плавающей точкой
Примеры
fig = plt.figure() fig.add_subplot(231) ax1 = fig.add_subplot(2, 3, 1) # equivalent but more general fig.add_subplot(232, frameon=False) # subplot with no frame fig.add_subplot(233, projection='polar') # polar subplot fig.add_subplot(234, sharex=ax1) # subplot sharing x-axis with ax1 fig.add_subplot(235, facecolor="red") # red subplot ax1.remove() # delete ax1 from the figure fig.add_subplot(ax1) # add ax1 back to the figure
- align_labels(axs=None)[source]
-
Выравнивает метки x и y подграфиков в одном и том же ряду или столбце подграфиков (соответственно), если выравнивание меток выполняется автоматически (т. е. положение метки не задаётся вручную).
Выравнивание сохраняется для событий рисования после его вызова.
- align_titles(axs=None)[source]
-
Выравнивает заголовки подграфиков в одном и том же ряду подграфиков, если выравнивание заголовков выполняется автоматически (т. е. положение заголовка не задаётся вручную).
Выравнивание сохраняется для событий рисования после его вызова.
- Параметры:
-
-
axsсписок
Axes -
Необязательный список (или массив NumPy)
Axesдля выравнивания заголовков. По умолчанию выравниваются все оси на рисунке.
-
axsсписок
См. также
Примечания
Предполагается, что
axsпроисходят от одного и того жеGridSpec, поэтому их позицииSubplotSpecсоответствуют позициям на рисунке.Примеры
Пример с заголовками:
fig, axs = plt.subplots(1, 2) axs[0].set_aspect('equal') axs[0].set_title('Title 0') axs[1].set_title('Title 1') fig.align_titles()
- align_xlabels(axs=None)[source]
-
Выравнивает метки оси X подграфиков в одной строке подграфиков, если выравнивание меток выполняется автоматически (т.е. положение метки не установлено вручную).
Выравнивание сохраняется для событий отрисовки после вызова этого метода.
Если метка расположена внизу, она выравнивается с метками на осях, у которых метка также находится внизу и которые находятся в одной самой нижней строке подграфиков. Если метка расположена вверху, она выравнивается с метками на осях с той же самой верхней строкой.
- Параметры:
См. также
Примечания
Предполагается, что
axsпринадлежат одному и тому жеGridSpec, так что их позицииSubplotSpecсоответствуют позициям на рисунке.Примеры
Пример с повернутыми метками оси X:
fig, axs = plt.subplots(1, 2) for tick in axs[0].get_xticklabels(): tick.set_rotation(55) axs[0].set_xlabel('XLabel 0') axs[1].set_xlabel('XLabel 1') fig.align_xlabels()
- align_ylabels(axs=None)[source]
-
Выравнивает метки оси Y подграфиков в одном столбце подграфиков, если выравнивание меток выполняется автоматически (т.е. положение метки не установлено вручную).
Выравнивание сохраняется для событий отрисовки после вызова этого метода.
Если метка расположена слева, она выравнивается с метками на осях, у которых метка также расположена слева и которые находятся в одном самом левом столбце подграфиков. Если метка расположена справа, она выравнивается с метками на осях в том же самом правом столбце.
- Параметры:
См. также
Примечания
Предполагается, что
axsпринадлежат одному и тому жеGridSpec, так что их позицииSubplotSpecсоответствуют позициям на рисунке.Примеры
Пример с большими метками оси Y:
fig, axs = plt.subplots(2, 1) axs[0].plot(np.arange(0, 1000, 50)) axs[0].set_ylabel('YLabel 0') axs[1].set_ylabel('YLabel 1') fig.align_ylabels()
- autofmt_xdate(bottom=0.2, rotation=30, ha='right', which='major')[source]
-
Метки дат на оси X часто перекрываются, поэтому полезно повернуть их и выровнять по правому краю. Кроме того, распространенный случай — несколько подграфиков с общей осью X, где данные на оси X — это даты. Метки часто длинные, и это помогает повернуть их на нижнем подграфике и отключить на других подграфиках, а также отключить метки оси X.
- Параметры:
-
- bottomfloat, по умолчанию: 0.2
-
Нижняя граница подграфиков для
subplots_adjust. - rotationfloat, по умолчанию: 30 градусов
-
Угол поворота меток делений оси X в градусах.
- ha{'left', 'center', 'right'}, по умолчанию: 'right'
-
Горизонтальное выравнивание меток делений оси X.
- which{'major', 'minor', 'both'}, по умолчанию: 'major'
-
Выбирает, какие метки делений повернуть.
- clear(keep_observers=False)[source]
-
Очистить рисунок.
- Параметры:
-
- keep_observersbool, по умолчанию: False
-
Установите keep_observers в значение True, если, например, виджет GUI отслеживает оси на рисунке.
- clf(keep_observers=False)[source]
-
[Не рекомендуется] Псевдоним для метода
clear().Не рекомендуется
Использование
clf()не рекомендуется. Используйтеclear()вместо этого.- Параметры:
-
- keep_observersbool, по умолчанию: False
-
Установите keep_observers в значение True, если, например, виджет GUI отслеживает оси на рисунке.
- colorbar(mappable, cax=None, ax=None, use_gridspec=True, **kwargs)[source]
-
Добавление цветовой шкалы к графику.
- Параметры:
-
- mappable
-
matplotlib.cm.ScalarMappable(например,AxesImage,ContourSetи т.д.) описываемое этой цветовой шкалой. Этот аргумент обязателен для методаFigure.colorbar, но необязателен для функцииpyplot.colorbar, которая устанавливает значение по умолчанию текущего изображения.Обратите внимание, что можно создать
ScalarMappable"на лету" для создания цветовых шкал, не привязанных к ранее нарисованному объекту, например:fig.colorbar(cm.ScalarMappable(norm=norm, cmap=cmap), ax=ax)
-
cax
Axes, необязательно -
Оси, на которых будет отображаться цветовая шкала. Если
None, то создаётся новая ось, и место для неё будет взято из осей, указанных в ax. -
ax
Axesили итерируемый объект илиnumpy.ndarrayосей, необязательно -
Одна или несколько родительских осей, из которых будет взято место для новой оси цветовой шкалы. Этот параметр используется только если cax не задан.
По умолчанию используется ось, содержащая используемый для создания цветовой шкалы объект mappable.
- use_gridspecbool, необязательно
-
Если cax
None, новая cax создаётся как экземпляр Axes. Если ax размещён с помощью subplotspec и use_gridspecTrue, то cax также размещается с помощью subplotspec.
- Возвращаемое значение:
-
-
colorbar
Colorbar
-
colorbar
- Другие параметры:
-
- locationNone или {'left', 'right', 'top', 'bottom'}
-
Положение, относительно родительской оси, где создается ось цветовой шкалы. Также определяет ориентацию цветовой шкалы (цветовые шкалы слева и справа - вертикальные, сверху и снизу - горизонтальные). Если None, положение будет взято из orientation, если оно задано (вертикальные цветовые шкалы справа, горизонтальные снизу), или по умолчанию будет 'right', если orientation не задано.
- orientationNone или {'vertical', 'horizontal'}
-
Ориентация цветовой шкалы. Предпочтительно задавать location цветовой шкалы, так как это также определяет orientation; передача несовместимых значений для location и orientation вызывает исключение.
- fractionfloat, по умолчанию: 0.15
-
Доля исходной оси для использования цветовой шкалы.
- shrinkfloat, по умолчанию: 1.0
-
Доля, на которую нужно умножить размер цветовой шкалы.
- aspectfloat, по умолчанию: 20
-
Соотношение длинных и коротких размеров.
- padfloat, по умолчанию: 0.05, если вертикальная, 0.15, если горизонтальная
-
Доля исходной оси между цветовой шкалой и новой осью изображения.
- anchor(float, float), необязательно
-
Точка привязки оси цветовой шкалы. По умолчанию (0.0, 0.5) для вертикальной; (0.5, 1.0) для горизонтальной.
- panchor(float, float) или False, необязательно
-
Точка привязки родительской оси цветовой шкалы. Если False, точка привязки родительской оси не изменится. По умолчанию (1.0, 0.5) для вертикальной; (0.5, 0.0) для горизонтальной.
- extend{'neither', 'both', 'min', 'max'}
-
Создавать конечные отметки для значений вне диапазона (если не 'neither'). Они устанавливаются для данной цветовой карты с помощью методов colormap set_under и set_over.
- extendfrac{None, 'auto', длина, длины}
-
Если установлено None, то минимальное и максимальное треугольные расширения цветовой шкалы будут иметь длину 5% от длины внутренней цветовой шкалы (по умолчанию).
Если установлено 'auto', делает треугольные расширения цветовой шкалы такой же длины, как внутренние прямоугольники (когда spacing задан как 'uniform') или такой же длины, как соответствующие соседние внутренние прямоугольники (когда spacing задан как 'proportional').
Если скаляр, указывает длину минимального и максимального треугольных расширений цветовой шкалы как долю длины внутренней цветовой шкалы. Также может быть задана двуэлементная последовательность дробей, указывающая длины минимального и максимального расширений цветовой шкалы соответственно как долю длины внутренней цветовой шкалы.
- extendrectbool
-
Если False, минимальное и максимальное расширения цветовой шкалы будут треугольными (по умолчанию). Если True, расширения будут прямоугольными.
- spacing{'uniform', 'proportional'}
-
Для дискретных цветовых шкал (
BoundaryNormили контуров), 'uniform' даёт каждой цвету одинаковое пространство; 'proportional' делает пространство пропорциональным интервалу данных. - ticksNone или список меток или Locator
-
Если None, метки определяются автоматически из входных данных.
- formatNone или str или Formatter
-
Если None, используется
ScalarFormatter. Поддерживаются строковые форматы, например"%4.2e"или"{x:.2e}". Может быть задан альтернативныйFormatter. - drawedgesbool
-
Рисовать ли линии на границах цветов.
- labelstr
-
Подпись на длинной оси цветовой шкалы.
- boundaries, valuesNone или последовательность
-
Если не задано, цветовая карта будет отображаться в масштабе от 0 до 1. Если последовательности, values должны быть на 1 меньше, чем boundaries. Для каждого региона, ограниченного смежными элементами в boundaries, будет использоваться цвет, сопоставленный соответствующему значению в values. Обычно полезно только для индексированных цветов (например,
norm=NoNorm()) или в других необычных ситуациях.
Примечания
Если mappable это
ContourSet, его extend kwarg включается автоматически.Параметр shrink предоставляет простой способ масштабирования цветовой шкалы относительно оси. Обратите внимание, что если cax задан, он определяет размер цветовой шкалы, и shrink и aspect игнорируются.
Для более точного контроля вы можете вручную указать позиции объектов осей, на которых отображаются объект mappable и цветовая шкала. В этом случае не используйте ни один из параметров Axes.
Известно, что некоторые программы просмотра векторной графики (svg и pdf) отображают белые зазоры между сегментами цветовой шкалы. Это связано с ошибками в программах просмотра, а не Matplotlib. В качестве обходного решения цветовая шкала может быть отображена с перекрывающимися сегментами:
cbar = colorbar() cbar.solids.set_edgecolor("face") draw()Однако, это имеет негативные последствия в других ситуациях, например, с полупрозрачными изображениями (alpha < 1) и расширениями цветовой шкалы; поэтому этот обходной путь не используется по умолчанию (см. выпуск #1188).
- contains(mouseevent)[source]
-
Проверка, произошел ли событие мыши на фигуре.
- Возвращаемое значение:
-
- bool, {}
- delaxes(ax)[source]
-
Удалить
Axesax из рисунка; обновить текущие оси.
- draw(renderer)[source]
-
Отобразить элемент (и его потомков) с помощью заданного рендерера.
Это не оказывает никакого влияния, если элемент не виден (
Artist.get_visibleвозвращает False).- Параметры:
-
-
renderer
RendererBaseподкласс.
-
renderer
Примечания
Этот метод переопределяется в подклассах элементов.
- propertyframeon
-
Возвращает видимость фонового патча рисунка, т. е. будет ли отрисовываться фоновый рисунок. Эквивалентно
Figure.patch.get_visible().
- gca()[source]
-
Получить текущие оси.
Если на этом рисунке нет осей, создаётся новая с использованием
Figure.add_subplot. (Чтобы проверить, есть ли на рисунке оси, проверьте, является лиfigure.axesпустым. Чтобы проверить, есть ли на данный момент рисунок на стеке pyplot, проверьте, является лиpyplot.get_fignums()пустым.)
- get_children()[source]
-
Получить список элементов, содержащихся в рисунке.
- get_default_bbox_extra_artists()[source]
-
Возвращает список элементов, обычно используемых в
Figure.get_tightbbox.
- get_edgecolor()[source]
-
Получить цвет границы прямоугольника рисунка.
- get_facecolor()[source]
-
Получить цвет заливки прямоугольника рисунка.
- get_frameon()[source]
-
Возвращает видимость фонового патча рисунка, т. е. будет ли отрисовываться фоновый рисунок. Эквивалентно
Figure.patch.get_visible().
- get_linewidth()[source]
-
Получить ширину линии прямоугольника рисунка.
- get_suptitle()[source]
-
Возвращает заголовок рисунка как строку или пустую строку, если он не установлен.
- get_supxlabel()[source]
-
Возвращает подзаголовок оси X как строку или пустую строку, если он не установлен.
- get_supylabel()[source]
-
Возвращает подзаголовок оси Y как строку или пустую строку, если он не установлен.
- get_tightbbox(renderer=None, *, bbox_extra_artists=None)[source]
-
Возвращает (плотное) ограничивающее прямоугольник рисунка в дюймах.
Обратите внимание, что
FigureBaseотличается от всех других элементов, которые возвращают своиBboxв пикселях.Элементы, у которых
artist.set_in_layout(False)не включаются в ограничивающий прямоугольник.- Параметры:
-
-
renderer
RendererBaseподкласс -
Рендерер, который будет использоваться для отрисовки рисунков (т. е.
fig.canvas.get_renderer()) -
bbox_extra_artistsсписок
ArtistилиNone -
Список элементов, которые нужно включить в плотное ограничивающее прямоугольник. Если
None(по умолчанию), то все дочерние элементы каждого набора осей включаются в плотное ограничивающее прямоугольник.
-
renderer
- Возвращает:
-
BboxBase-
содержащий ограничивающий прямоугольник (в дюймах рисунка).
- get_window_extent(renderer=None)[source]
-
Получить ограничивающий прямоугольник элемента в пространстве отображения.
Ширина и высота ограничивающего прямоугольника неотрицательны.
Подклассы должны переопределять для включения в вычисление "плотного" ограничивающего прямоугольника. По умолчанию возвращает пустой ограничивающий прямоугольник в координатах 0, 0.
Будьте осторожны при использовании этой функции, результаты не обновляются, если размеры окна элемента изменяются. Изменение размеров может произойти из-за любых изменений в стеке преобразований, таких как изменение пределов осей, размера рисунка или используемой области рисования (как при сохранении рисунка). Это может привести к непредсказуемому поведению, когда интерактивные рисунки будут выглядеть хорошо на экране, но сохранятся неверно.
- legend(*args, **kwargs)[source]
-
Размещение легенды на графике.
Возможные подписи:
legend() legend(handles, labels) legend(handles=handles) legend(labels)
Эти подписи соответствуют различным способам использования этого метода:
1. Автоматическое определение элементов, которые должны быть показаны в легенде
Элементы, которые должны быть добавлены в легенду, определяются автоматически, если вы не передаете дополнительные аргументы.
В этом случае метки берутся из элемента графика. Вы можете указать их при создании элемента или вызвав метод
set_label()для элемента:ax.plot([1, 2, 3], label='Inline label') fig.legend()
или:
line, = ax.plot([1, 2, 3]) line.set_label('Label via method') fig.legend()Конкретные линии можно исключить из автоматического выбора элементов легенды, определив метку, начинающуюся с нижнего подчеркивания. Это значение по умолчанию для всех элементов графика, поэтому вызов
Figure.legendбез аргументов и без ручного задания меток приведет к тому, что легенда не будет отображена.2. Явное указание элементов графика и меток в легенде
Для полного управления тем, какие элементы графика имеют запись в легенде, можно передать итерируемый объект элементов графика, за которым следует итерируемый объект меток легенды, соответственно:
fig.legend([line1, line2, line3], ['label1', 'label2', 'label3'])
3. Явное указание элементов графика в легенде
Это аналогично пункту 2, но метки берутся из свойств меток элементов графика. Пример:
line1, = ax1.plot([1, 2, 3], label='label1') line2, = ax2.plot([1, 2, 3], label='label2') fig.legend(handles=[line1, line2])
4. Подпись существующих элементов графика
Не рекомендуется
Эта подпись не рекомендуется, так как связь между элементами графика и метками определяется только их порядком и легко может быть нарушена.
Чтобы создать легенду для всех элементов графика на всех осях, вызовите эту функцию с итерируемым объектом строк, по одной строке для каждого элемента легенды. Например:
fig, (ax1, ax2) = plt.subplots(1, 2) ax1.plot([1, 3, 5], color='blue') ax2.plot([2, 4, 6], color='red') fig.legend(['the blues', 'the reds'])
- Параметры:
-
-
handlesсписок
Artist, необязательно -
Список элементов графика (линии, области), которые должны быть добавлены в легенду. Используйте вместе с labels, если вам нужно полное управление тем, что отображается в легенде, и автоматический механизм, описанный выше, недостаточен.
Длина списков handles и labels должна быть одинаковой. В противном случае они будут усечены до меньшей длины.
- labelsсписок строк, необязательно
-
Список меток, которые нужно отобразить рядом с элементами графика. Используйте вместе с handles, если вам нужно полное управление тем, что отображается в легенде, и автоматический механизм, описанный выше, недостаточен.
-
handlesсписок
- Возвращаемое значение:
-
Legend
- Другие параметры:
-
- locстрока или пара чисел с плавающей точкой, по умолчанию: 'верхний правый'
-
Расположение легенды.
Строки
'upper left','upper right','lower left','lower right'помещают легенду в соответствующий угол рисунка.Строки
'upper center','lower center','center left','center right'помещают легенду в центр соответствующей стороны рисунка.Строка
'center'помещает легенду в центр рисунка.Расположение также может быть 2-кортежем, содержащим координаты левого нижнего угла легенды в координатах рисунка (в этом случае bbox_to_anchor будет проигнорирован).
Для обратной совместимости,
'center right'(но не другие расположения) также может быть написано как'right', и каждое расположение "строка" также может быть задано как числовое значение:Строковое расположение
Код расположения
'лучшее' (только для осей)
0
'верхний правый'
1
'верхний левый'
2
'нижний левый'
3
'нижний правый'
4
'правый'
5
'центр слева'
6
'центр справа'
7
'нижний центр'
8
'верхний центр'
9
'центр'
10
Если рисунок использует менеджер ограничений компоновки, строковые коды аргумента ключевого слова loc могут обеспечить лучшее поведение компоновки с использованием префикса 'вне'. Существует неоднозначность в углах, поэтому 'вне верхний правый' обеспечит пространство для легенды над остальными осями в компоновке, а 'вне правый верхний' обеспечит пространство справа от компоновки. Кроме значений loc, перечисленных выше, у нас есть 'вне правый верхний', 'вне правый нижний', 'вне левый верхний' и 'вне левый нижний'. Для получения более подробной информации см. Руководство по легендам.
-
bbox_to_anchor
BboxBase, 2-кортеж или 4-кортеж чисел с плавающей точкой -
Прямоугольник, используемый для позиционирования легенды совместно с loc. По умолчанию
axes.bbox(если вызван как методAxes.legend) илиfigure.bbox(если вызываетсяFigure.legend). Этот аргумент позволяет произвольно размещать легенду.Координаты прямоугольника интерпретируются в системе координат, заданной bbox_transform, по умолчанию в координатах осей или рисунка, в зависимости от вызываемого
legend.Если указан 4-кортеж или
BboxBase, то он задаёт прямоугольник(x, y, width, height)для размещения легенды. Чтобы поместить легенду в лучшее расположение в нижнем правом квадранте осей (или рисунка):loc='best', bbox_to_anchor=(0.5, 0., 0.5, 0.5)
2-кортеж
(x, y)помещает угол легенды, указанный loc, в координаты x, y. Например, чтобы поместить верхний правый угол легенды в центр осей (или рисунка), можно использовать следующие ключевые слова:loc='upper right', bbox_to_anchor=(0.5, 0.5)
- ncolsцелое число, по умолчанию: 1
-
Количество столбцов в легенде.
Для обратной совместимости поддерживается написание ncol, но это не рекомендуется. Если оба заданы, используется ncols.
-
propNone или
FontPropertiesили словарь -
Свойства шрифта легенды. Если None (по умолчанию), будут использоваться текущие
matplotlib.rcParams. - fontsizeцелое число или {'xx-small', 'x-small', 'small', 'medium', 'large', 'x-large', 'xx-large'}
-
Размер шрифта легенды. Если значение числовое, размер будет абсолютным размером шрифта в пунктах. Строковые значения относятся к текущему размеру шрифта по умолчанию. Этот аргумент используется только если prop не указан.
-
labelcolorстрока или список, по умолчанию:
rcParams["legend.labelcolor"](по умолчанию:'None') -
Цвет текста в легенде. Допустимая строка цвета (например, 'красный'), или список строк цвета. Цвет метки также можно сделать таким же, как цвет линии или маркера, используя 'linecolor', 'markerfacecolor' (или 'mfc'), или 'markeredgecolor' (или 'mec').
Цвет метки можно установить глобально, используя
rcParams["legend.labelcolor"](по умолчанию:'None'). Если None, используетсяrcParams["text.color"](по умолчанию:'black'). -
numpointsцелое число, по умолчанию:
rcParams["legend.numpoints"](по умолчанию:1) -
Количество точек маркера в легенде при создании записи легенды для
Line2D(линия). -
scatterpointsцелое число, по умолчанию:
rcParams["legend.scatterpoints"](по умолчанию:1) -
Количество точек маркера в легенде при создании записи легенды для
PathCollection(точечный график). -
scatteryoffsetsитерируемый список чисел с плавающей точкой, по умолчанию:
[0.375, 0.5, 0.3125] -
Вертикальное смещение (относительно размера шрифта) для маркеров, созданных для записи легенды точечного графика. 0.0 находится у основания текста легенды, а 1.0 - вверху. Чтобы разместить все маркеры на одной высоте, установите значение в
[0.5]. -
markerscaleчисло с плавающей точкой, по умолчанию:
rcParams["legend.markerscale"](по умолчанию:1.0) -
Относительный размер маркеров легенды по сравнению с первоначально нарисованными.
- markerfirstлогическое значение, по умолчанию: True
-
Если True, маркер легенды помещается слева от метки легенды. Если False, маркер легенды помещается справа от метки легенды.
- reverseлогическое значение, по умолчанию: False
-
Если True, метки легенды отображаются в обратном порядке от входных данных. Если False, метки легенды отображаются в том же порядке, что и входные данные.
Добавлена в версии 3.7.
-
frameonлогическое значение, по умолчанию:
rcParams["legend.frameon"](по умолчанию:True) -
Определяет, должна ли легенда быть нарисована на области (рамке).
-
fancyboxлогическое значение, по умолчанию:
rcParams["legend.fancybox"](по умолчанию:True) -
Определяет, должны ли быть включены закругленные углы вокруг
FancyBboxPatch, который составляет фон легенды. -
shadowNone, логическое значение или словарь, по умолчанию:
rcParams["legend.shadow"](по умолчанию:False) -
Определяет, нужно ли рисовать тень за легендой. Тень можно настроить, используя ключевые слова
Patch. Настройка черезrcParams["legend.shadow"](по умолчанию:False) в настоящее время не поддерживается. -
framealphaчисло с плавающей точкой, по умолчанию:
rcParams["legend.framealpha"](по умолчанию:0.8) -
Альфа-прозрачность фона легенды. Если shadow активирован, и framealpha равно
None, значение по умолчанию игнорируется. -
facecolor"inherit" или цвет, по умолчанию:
rcParams["legend.facecolor"](по умолчанию:'inherit') -
Цвет фона легенды. Если
"inherit", используетсяrcParams["axes.facecolor"](по умолчанию:'white'). -
edgecolor"inherit" или цвет, по умолчанию:
rcParams["legend.edgecolor"](по умолчанию:'0.8') -
Цвет границы области легенды. Если
"inherit", используетсяrcParams["axes.edgecolor"](по умолчанию:'black'). - mode{"expand", None}
-
Если mode установлено в
"expand", легенда будет расширена по горизонтали для заполнения области осей (или bbox_to_anchor, если определяет размеры легенды). -
bbox_transformNone или
Transform -
Преобразование для прямоугольника (bbox_to_anchor). При значении
None(по умолчанию) используется преобразование осейtransAxes. - titleстрока или None
-
Заголовок легенды. По умолчанию заголовок отсутствует (
None). -
title_fontpropertiesNone или
FontPropertiesили словарь
-
-
Свойства шрифта заголовка легенды. Если None (по умолчанию), будет использован аргумент title_fontsize, если он присутствует; если и title_fontsize равен None, будет использовано текущее значение
rcParams["legend.title_fontsize"](по умолчанию:None). -
title_fontsizeint или {'xx-small', 'x-small', 'small', 'medium', 'large', 'x-large', 'xx-large'}, по умолчанию:
rcParams["legend.title_fontsize"](по умолчанию:None) -
Размер шрифта заголовка легенды. Примечание: это нельзя комбинировать с title_fontproperties. Если вы хотите установить размер шрифта вместе с другими его свойствами, используйте параметр size в title_fontproperties.
- alignment{'center', 'left', 'right'}, по умолчанию: 'center'
-
Выравнивание заголовка легенды и блока элементов. Элементы выравниваются как единый блок, поэтому маркеры всегда выстраиваются в одну линию.
-
borderpadfloat, по умолчанию:
rcParams["legend.borderpad"](по умолчанию:0.4) -
Отступ внутри рамки легенды, в единицах размера шрифта.
-
labelspacingfloat, по умолчанию:
rcParams["legend.labelspacing"](по умолчанию:0.5) -
Вертикальное расстояние между элементами легенды, в единицах размера шрифта.
-
handlelengthfloat, по умолчанию:
rcParams["legend.handlelength"](по умолчанию:2.0) -
Длина рукояток легенды, в единицах размера шрифта.
-
handleheightfloat, по умолчанию:
rcParams["legend.handleheight"](по умолчанию:0.7) -
Высота рукояток легенды, в единицах размера шрифта.
-
handletextpadfloat, по умолчанию:
rcParams["legend.handletextpad"](по умолчанию:0.8) -
Отступ между рукояткой легенды и текстом, в единицах размера шрифта.
-
borderaxespadfloat, по умолчанию:
rcParams["legend.borderaxespad"](по умолчанию:0.5) -
Отступ между осями и рамкой легенды, в единицах размера шрифта.
-
columnspacingfloat, по умолчанию:
rcParams["legend.columnspacing"](по умолчанию:2.0) -
Интервал между столбцами, в единицах размера шрифта.
- handler_mapdict или None
-
Пользовательский словарь, сопоставляющий экземпляры или типы с обработчиком легенды. Этот handler_map обновляет стандартный словарь обработчиков, который можно найти в
matplotlib.legend.Legend.get_legend_handler_map. - draggablebool, по умолчанию: False
-
Можно ли перетаскивать легенду мышкой.
-
См. также
Примечания
Некоторые элементы не поддерживаются этой функцией. Подробности см. в Руководстве по легендам.
- sca(a)[source]
-
Установить текущие оси на a и вернуть a.
- set(*, agg_filter=<UNSET>, alpha=<UNSET>, animated=<UNSET>, clip_box=<UNSET>, clip_on=<UNSET>, clip_path=<UNSET>, edgecolor=<UNSET>, facecolor=<UNSET>, frameon=<UNSET>, gid=<UNSET>, in_layout=<UNSET>, label=<UNSET>, linewidth=<UNSET>, mouseover=<UNSET>, path_effects=<UNSET>, picker=<UNSET>, rasterized=<UNSET>, sketch_params=<UNSET>, snap=<UNSET>, transform=<UNSET>, url=<UNSET>, visible=<UNSET>, zorder=<UNSET>)[source]
-
Установка нескольких свойств одновременно.
Поддерживаемые свойства:
Свойство
Описание
функция фильтра, которая принимает массив float (m, n, 3) и значение dpi, и возвращает массив (m, n, 3) и два смещения от левого нижнего угла изображения
скаляр или None
bool
BboxBaseили Nonebool
Объект Patch или (Path, Transform) или None
bool
строка
bool
объект
число
bool
список
AbstractPathEffectNone или bool или float или вызываемый объект
bool
(масштаб: float, длина: float, случайность: float)
bool или None
строка
bool
float
- set_edgecolor(color)[source]
-
Установка цвета границы прямоугольника Figure.
- Параметры:
-
- colorцвет
- set_facecolor(color)[source]
-
Установка цвета заливки прямоугольника Figure.
- Параметры:
-
- colorцвет
- set_frameon(b)[source]
-
Установите видимость фоновой области фигуры, т.е. будет ли отрисовываться фон фигуры. Эквивалентно
Figure.patch.set_visible().- Параметры:
-
- bbool
- set_linewidth(linewidth)[source]
-
Установить ширину линии прямоугольника фигуры.
- Параметры:
-
- linewidthчисло
- subfigures(nrows=1, ncols=1, squeeze=True, wspace=None, hspace=None, width_ratios=None, height_ratios=None, **kwargs)[source]
-
Добавить набор подфигур в эту фигуру или подфигуру.
Подфигура имеет те же методы художника, что и фигура, и логически является такой же, как фигура, но не может распечатать себя. См. Подфигуры фигуры.
Примечание
Концепция подфигуры новая в версии 3.4, и API все еще предварительный.
- Параметры:
-
- nrows, ncolsint, по умолчанию: 1
-
Количество строк/столбцов сетки подфигур.
- squeezebool, по умолчанию: True
-
Если True, лишние измерения удаляются из возвращаемого массива подфигур.
- wspace, hspacefloat, по умолчанию: None
-
Количество ширины/высоты, зарезервированной для пространства между подфигурами, выраженное как доля средней ширины/высоты подфигуры. Если не указано, значения будут получены из rcParams, если используется ограниченное расположение (см.
ConstrainedLayoutEngine), или ноль, если движок расположения не используется. - width_ratiosпоследовательность длины ncols, необязательно
-
Определяет относительные ширины столбцов. Каждый столбец получает относительную ширину
width_ratios[i] / sum(width_ratios). Если не указано, все столбцы будут иметь одинаковую ширину. - height_ratiosпоследовательность длины nrows, необязательно
-
Определяет относительные высоты строк. Каждая строка получает относительную высоту
height_ratios[i] / sum(height_ratios). Если не указано, все строки будут иметь одинаковую высоту.
- subplot_mosaic(mosaic, *, sharex=False, sharey=False, width_ratios=None, height_ratios=None, empty_sentinel='.', subplot_kw=None, per_subplot_kw=None, gridspec_kw=None)[source]
-
Построение макета Oси на основе ASCII-искусства или вложенных списков.
Это вспомогательная функция для построения сложных макетов GridSpec визуально.
См. Составление сложных и семантических фигур (subplot_mosaic) для примера и полного API.
- Параметры:
-
- mosaicсписок списков {хешируемых или вложенных} или строка
-
Визуальный макет, определяющий расположение Oси, обозначенные строками. Например
x = [['A panel', 'A panel', 'edge'], ['C panel', '.', 'edge']]создает 4 Oси:
- 'A panel', имеющий высоту 1 строка и охватывающий первые два столбца
- 'edge', имеющий высоту 2 строки и находящийся на правом краю
- 'C panel', имеющий 1 строку и 1 столбец в левом нижнем углу
- пустое место шириной 1 строка и 1 столбец в центре снизу
Любой элемент в макете может быть списком списков той же формы для создания вложенных макетов.
Если входной параметр — строка, то это может быть многострочная строка вида
''' AAE C.E '''
где каждый символ — столбец, а каждая строка — строка. Или это может быть однострочная строка, где строки разделены
;:'AB;CC'
Формат строк позволяет использовать только односимвольные метки Oси и не поддерживает вложенные макеты, но является очень кратким.
Идентификаторы Oси могут быть
strили хешируемым объектом, не являющимся итерируемым (например,tuples). - sharex, shareybool, по умолчанию: False
-
Если True, ось x (sharex) или ось y (sharey) будут совместно использоваться всеми подграфиками. В этом случае видимость меток делений и единицы осей ведут себя так же, как и для
subplots. Если False, ось x или y каждого подграфика будет независимой. - width_ratiosмассив-подобный длиной ncols, необязательно
-
Определяет относительные ширины столбцов. Каждый столбец получает относительную ширину
width_ratios[i] / sum(width_ratios). Если не указано, все столбцы будут иметь одинаковую ширину. Эквивалентноgridspec_kw={'width_ratios': [...]}. В случае вложенных макетов этот параметр применяется только к внешнему макету. - height_ratiosмассив-подобный длиной nrows, необязательно
-
Определяет относительные высоты строк. Каждая строка получает относительную высоту
height_ratios[i] / sum(height_ratios). Если не указано, все строки будут иметь одинаковую высоту. Эквивалентноgridspec_kw={'height_ratios': [...]}. В случае вложенных макетов этот параметр применяется только к внешнему макету. - subplot_kwсловарь, необязательно
-
Словарь с ключевыми словами, передаваемыми в вызов
Figure.add_subplotдля создания каждого подграфика. Эти значения могут быть переопределены значениями в per_subplot_kw. - per_subplot_kwсловарь, необязательно
-
Словарь, сопоставляющий идентификаторы Oси или кортежи идентификаторов со словарем ключевых слов, передаваемых в вызов
Figure.add_subplotдля создания каждого подграфика. Значения в этих словарях имеют приоритет над значениями в subplot_kw.Если mosaic — строка, и, следовательно, все ключи — одиночные символы, можно использовать одну строку вместо кортежа в качестве ключей; например,
"AB"эквивалентно("A", "B").Добавлен в версии 3.7.
- gridspec_kwсловарь, необязательно
-
Словарь с ключевыми словами, передаваемыми конструктору
GridSpec, используемому для создания сетки, на которой размещаются подграфики. В случае вложенных макетов этот аргумент применяется только к внешнему макету. Для более сложных макетов пользователи должны использоватьFigure.subfiguresдля создания вложенности. - empty_sentinelобъект, необязательно
-
Элемент в макете, обозначающий "оставить это место пустым". По умолчанию
'.'. Обратите внимание, что если layout — строка, она обрабатывается с помощьюinspect.cleandocдля удаления начальных пробелов, что может помешать использованию пробелов в качестве маркера пустого места.
- Возвращает:
-
- словарь[метка, Oсь]
-
Словарь, сопоставляющий метки с объектами Oси. Порядок Oси слева направо и сверху вниз соответствует их положению в общем макете.
- subplots(nrows=1, ncols=1, *, sharex=False, sharey=False, squeeze=True, width_ratios=None, height_ratios=None, subplot_kw=None, gridspec_kw=None)[source]
-
Добавляет набор подграфиков к этому графику.
Этот вспомогательный метод упрощает создание распространенных макетов подграфиков одним вызовом.
- Параметры:
-
- nrows, ncolsint, по умолчанию: 1
-
Количество строк/столбцов сетки подграфиков.
- sharex, shareybool или {'none', 'all', 'row', 'col'}, по умолчанию: False
-
Управляет совместным использованием оси x (sharex) или оси y (sharey):
- True или 'all': ось x или y будет совместно использоваться всеми подграфиками.
- False или 'none': каждая ось x или y каждого подграфика будет независимой.
- 'row': каждая строка подграфиков будет совместно использовать ось x или y.
- 'col': каждый столбец подграфиков будет совместно использовать ось x или y.
Когда подграфики имеют общую ось x по столбцу, метки делений по оси x отображаются только в нижнем подграфике. Аналогично, когда подграфики имеют общую ось y по строке, метки делений по оси y отображаются только в подграфике первого столбца. Чтобы позже включить метки делений других подграфиков, используйте
tick_params.Когда подграфики имеют общую ось с единицами, вызов
Axis.set_unitsобновит каждую ось с новыми единицами.Обратите внимание, что разделить оси нельзя.
- squeezebool, по умолчанию: True
-
-
Если True, лишние измерения удаляются из возвращаемого массива Axes:
- если создается только один подграфик (nrows=ncols=1), возвращается единственный объект Axes как скаляр.
- для Nx1 или 1xM подграфиков возвращаемый объект является одномерным массивом numpy объектов Axes.
- для NxM подграфиков с N>1 и M>1 возвращается двумерный массив.
- Если False, никаких сокращений не выполняется: возвращаемый объект Axes всегда является двумерным массивом, содержащим экземпляры Axes, даже если он оказывается 1x1.
-
- width_ratiosмассив-подобный объект длины ncols, необязательно
-
Определяет относительные ширины столбцов. Каждый столбец получает относительную ширину
width_ratios[i] / sum(width_ratios). Если не указано, все столбцы будут иметь одинаковую ширину. Эквивалентноgridspec_kw={'width_ratios': [...]}. - height_ratiosмассив-подобный объект длины nrows, необязательно
-
Определяет относительные высоты строк. Каждая строка получает относительную высоту
height_ratios[i] / sum(height_ratios). Если не указано, все строки будут иметь одинаковую высоту. Эквивалентноgridspec_kw={'height_ratios': [...]}. - subplot_kwdict, необязательно
-
Словарь с ключевыми словами, передаваемыми в вызов
Figure.add_subplotдля создания каждого подграфика. - gridspec_kwdict, необязательно
-
Словарь с ключевыми словами, передаваемыми конструктору
GridSpec, используемому для создания сетки, на которой размещаются подграфики.
- Возвращаемое значение:
-
-
Axesили массив Axes -
Либо один объект
Axes, либо массив объектов Axes, если было создано более одного подграфика. Размеры возвращаемого массива можно контролировать с помощью ключевого слова squeeze, см. выше.
-
См. также
Примеры
# First create some toy data: x = np.linspace(0, 2*np.pi, 400) y = np.sin(x**2) # Create a figure fig = plt.figure() # Create a subplot ax = fig.subplots() ax.plot(x, y) ax.set_title('Simple plot') # Create two subplots and unpack the output array immediately ax1, ax2 = fig.subplots(1, 2, sharey=True) ax1.plot(x, y) ax1.set_title('Sharing Y axis') ax2.scatter(x, y) # Create four polar Axes and access them through the returned array axes = fig.subplots(2, 2, subplot_kw=dict(projection='polar')) axes[0, 0].plot(x, y) axes[1, 1].scatter(x, y) # Share an X-axis with each column of subplots fig.subplots(2, 2, sharex='col') # Share a Y-axis with each row of subplots fig.subplots(2, 2, sharey='row') # Share both X- and Y-axes with all subplots fig.subplots(2, 2, sharex='all', sharey='all') # Note that this is the same as fig.subplots(2, 2, sharex=True, sharey=True)
- subplots_adjust(left=None, bottom=None, right=None, top=None, wspace=None, hspace=None)[source]
-
Корректирует параметры макета подграфиков.
Неустановленные параметры остаются неизменными; начальные значения задаются
rcParams["figure.subplot.[name]"].- Параметры:
-
- leftfloat, необязательно
-
Позиция левого края подграфиков, как доля ширины фигуры.
- rightfloat, необязательно
-
Позиция правого края подграфиков, как доля ширины фигуры.
- bottomfloat, необязательно
-
Позиция нижнего края подграфиков, как доля высоты фигуры.
- topfloat, необязательно
-
Позиция верхнего края подграфиков, как доля высоты фигуры.
- wspacefloat, необязательно
-
Ширина отступа между подграфиками, как доля средней ширины Axes.
- hspacefloat, необязательно
-
Высота отступа между подграфиками, как доля средней высоты Axes.
- suptitle(t, **kwargs)[source]
-
Добавить централизованный заголовок фигуры.
- Параметры:
-
- tstr
-
Текст заголовка.
- xfloat, по умолчанию: 0.5
-
Положение x текста в координатах фигуры.
- yfloat, по умолчанию: 0.98
-
Положение y текста в координатах фигуры.
- horizontalalignment, ha{'center', 'left', 'right'}, по умолчанию: center
-
Горизонтальное выравнивание текста относительно (x, y).
- verticalalignment, va{'top', 'center', 'bottom', 'baseline'}, по умолчанию: top
-
Вертикальное выравнивание текста относительно (x, y).
-
fontsize, sizeпо умолчанию:
rcParams["figure.titlesize"](по умолчанию:'large') -
Размер шрифта текста. См.
Text.set_sizeдля возможных значений. -
fontweight, weightпо умолчанию:
rcParams["figure.titleweight"](по умолчанию:'normal') -
Вес шрифта текста. См.
Text.set_weightдля возможных значений.
- Возвращаемые значения:
-
- text
-
Экземпляр
Textзаголовка.
- Другие параметры:
-
- fontpropertiesNone или dict, необязательно
-
Словарь свойств шрифта. Если fontproperties задан, значения по умолчанию для размера и веса шрифта берутся из значений по умолчанию
FontProperties.rcParams["figure.titlesize"](по умолчанию:'large') иrcParams["figure.titleweight"](по умолчанию:'normal') игнорируются в этом случае. - **kwargs
-
Дополнительные kwargs являются свойствами
matplotlib.text.Text.
- supxlabel(t, **kwargs)[source]
-
Добавить централизованную подпись оси x к фигуре.
- Параметры:
-
- tstr
-
Текст подписи.
- xfloat, по умолчанию: 0.5
-
Положение x текста в координатах фигуры.
- yfloat, по умолчанию: 0.01
-
Положение y текста в координатах фигуры.
- horizontalalignment, ha{'center', 'left', 'right'}, по умолчанию: center
-
Горизонтальное выравнивание текста относительно (x, y).
- verticalalignment, va{'top', 'center', 'bottom', 'baseline'}, по умолчанию: bottom
-
Вертикальное выравнивание текста относительно (x, y).
-
fontsize, sizeпо умолчанию:
rcParams["figure.labelsize"](по умолчанию:'large') -
Размер шрифта текста. См.
Text.set_sizeдля возможных значений. -
fontweight, weightпо умолчанию:
rcParams["figure.labelweight"](по умолчанию:'normal') -
Вес шрифта текста. См.
Text.set_weightдля возможных значений.
- Возвращаемые значения:
-
- text
-
Экземпляр
Textподписи оси x.
- Другие параметры:
-
- fontpropertiesNone или dict, необязательно
-
Словарь свойств шрифта. Если fontproperties задан, значения по умолчанию для размера и веса шрифта берутся из значений по умолчанию
FontProperties.rcParams["figure.labelsize"](по умолчанию:'large') иrcParams["figure.labelweight"](по умолчанию:'normal') игнорируются в этом случае. - **kwargs
-
Дополнительные kwargs являются свойствами
matplotlib.text.Text.
- supylabel(t, **kwargs)[source]
-
Добавить централизованную подпись оси y к фигуре.
- Параметры:
-
- tstr
-
Текст подписи.
- xfloat, по умолчанию: 0.02
-
Положение x текста в координатах фигуры.
- yfloat, по умолчанию: 0.5
-
Положение y текста в координатах фигуры.
- horizontalalignment, ha{'center', 'left', 'right'}, по умолчанию: left
-
Горизонтальное выравнивание текста относительно (x, y).
- verticalalignment, va{'top', 'center', 'bottom', 'baseline'}, по умолчанию: center
-
Вертикальное выравнивание текста относительно (x, y).
-
fontsize, sizeпо умолчанию:
rcParams["figure.labelsize"](по умолчанию:'large') -
Размер шрифта текста. См.
Text.set_sizeдля возможных значений. -
fontweight, weightпо умолчанию:
rcParams["figure.labelweight"](по умолчанию:'normal') -
Вес шрифта текста. См.
Text.set_weightдля возможных значений.
- Возвращаемые значения:
-
- text
-
Экземпляр
Textподписи оси y.
- Другие параметры:
-
- fontpropertiesNone или dict, необязательно
-
Словарь свойств шрифта. Если fontproperties задан, значения по умолчанию для размера и веса шрифта берутся из значений по умолчанию
FontProperties.rcParams["figure.labelsize"](по умолчанию:'large') иrcParams["figure.labelweight"](по умолчанию:'normal') игнорируются в этом случае. - **kwargs
-
Дополнительные kwargs являются свойствами
matplotlib.text.Text.
- text(x, y, s, fontdict=None, **kwargs)[source]
-
Добавить текст на график.
- Параметры:
-
- x, yfloat
-
Позиция для размещения текста. По умолчанию, в координатах фигуры, значения в диапазоне [0, 1]. Система координат может быть изменена с помощью ключевого слова transform.
- sstr
-
Строка текста.
- fontdictdict, необязательно
-
Словарь для переопределения свойств текста по умолчанию. Если не указан, значения определяются по умолчанию
rcParams["font.*"]. Свойства, переданные как kwargs, переопределяют соответствующие значения, указанные в fontdict.
- Возвращаемое значение:
-
Text
- Другие параметры:
-
-
**kwargs
Textсвойства
-
**kwargs
-
Другие различные параметры текста.
Свойство
Описание
функция фильтра, которая принимает массив float (m, n, 3) и значение dpi, и возвращает массив (m, n, 3) и два смещения от нижнего левого угла изображения
скаляр или None
bool
bool
словарь с свойствами для
patches.FancyBboxPatchнеизвестно
неизвестно
неизвестно
colorили cfontfamilyили family или fontname{ШРИФТ, 'serif', 'sans-serif', 'cursive', 'fantasy', 'monospace'}
fontpropertiesили font или font_propertiesfontsizeили sizeвещественное число или {'xx-small', 'x-small', 'small', 'medium', 'large', 'x-large', 'xx-large'}
fontstretchили stretch{числовое значение в диапазоне 0-1000, 'ultra-condensed', 'extra-condensed', 'condensed', 'semi-condensed', 'normal', 'semi-expanded', 'expanded', 'extra-expanded', 'ultra-expanded'}
fontstyleили style{'normal', 'italic', 'oblique'}
fontvariantили variant{'normal', 'small-caps'}
fontweightили weight{числовое значение в диапазоне 0-1000, 'ultralight', 'light', 'normal', 'regular', 'book', 'medium', 'roman', 'semibold', 'demibold', 'demi', 'bold', 'heavy', 'extra bold', 'black'}
str
horizontalalignmentили ha{'left', 'center', 'right'}
bool
объект
вещественное число (кратное размеру шрифта)
строка
bool
multialignmentили ma{'left', 'right', 'center'}
bool
список
AbstractPathEffectNone или bool или float или вызываемый объект
(вещественное число, вещественное число)
bool
вещественное число или {'vertical', 'horizontal'}
{None, 'default', 'anchor'}
(scale: float, length: float, randomness: float)
bool или None
объект
bool
строка
bool, по умолчанию:
rcParams["text.usetex"](по умолчанию:False)
-
См. также
Вспомогательные функции
- matplotlib.figure.figaspect(arg)[source]
-
Вычисление ширины и высоты фигуры с заданным соотношением сторон.
Хотя высота берется из
rcParams["figure.figsize"](по умолчанию:[6.4, 4.8]), ширина корректируется для соответствия желаемому соотношению сторон. Кроме того, гарантируется, что ширина находится в диапазоне [4., 16.], а высота — в диапазоне [2., 16.]. При необходимости, высота по умолчанию корректируется.- Параметры:
-
- argfloat или 2D массив
-
Если float, это определяет соотношение сторон (т.е. отношение высота / ширина). В случае массива соотношение сторон — это количество строк / количество столбцов, чтобы массив мог быть размещен в фигуре без искажений.
- Возвращаемые значения:
-
- width, heightfloat
-
Размер фигуры в дюймах.
Примечания
Если вы хотите создать ось внутри фигуры, которая все еще сохраняет соотношение сторон, убедитесь, что вы создаете ее с равной шириной и высотой. См. примеры ниже.
Благодарим Фернандо Переса за эту функцию.
Примеры
Создать фигуру, вдвое более высокую, чем широкую:
w, h = figaspect(2.) fig = Figure(figsize=(w, h)) ax = fig.add_axes([0.1, 0.1, 0.8, 0.8]) ax.imshow(A, **kwargs)
Создать фигуру с подходящим соотношением сторон для массива:
A = rand(5, 3) w, h = figaspect(A) fig = Figure(figsize=(w, h)) ax = fig.add_axes([0.1, 0.1, 0.8, 0.8]) ax.imshow(A, **kwargs)
© 2012–2023 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/stable/api/figure_api.html