matplotlib.pyplot.subplot
- matplotlib.pyplot.subplot(*args, **kwargs)[исходный код]
-
Добавляет Axes к текущей фигуре или возвращает существующий Axes.
Это обёртка для
Figure.add_subplot, которая добавляет дополнительное поведение при работе с неявным API (см. раздел примечаний).Сигнатуры вызова:
subplot(nrows, ncols, index, **kwargs) subplot(pos, **kwargs) subplot(**kwargs) subplot(ax)
- Параметры:
-
-
*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 фигуры. - Целое число из 3 цифр. Цифры интерпретируются так, как если бы они были переданы отдельно в виде трёх однозначных целых чисел, то есть
fig.add_subplot(235)— это то же самое, чтоfig.add_subplot(2, 3, 5). Обратите внимание, что этот способ можно использовать только при наличии не более 9 подграфиков. SubplotSpec.
- Три целых числа (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'.
-
sharex, sharey
Axes, необязательный -
Общий
axisx или y задаётся с помощью sharex и/или sharey. У оси будут те же пределы, деления и масштаб, что и у оси общего Axes. - labelstr
-
Метка возвращаемого Axes.
-
*argsint, (int, int, index), или
- Возвращает:
-
Axes-
Axes подграфика. Возвращённый Axes на самом деле может быть экземпляром подкласса, например
projections.polar.PolarAxesдля полярных проекций.
- Другие параметры:
-
- **kwargs
-
Этот метод также принимает именованные аргументы базового класса возвращаемого Axes, за исключением аргумента figure. Именованные аргументы базового класса для прямоугольной системы координат
Axesприведены в следующей таблице, однако при использовании другой проекции могут быть доступны и другие именованные аргументы.Свойство
Описание
{'box', 'datalim'}
функция фильтрации, которая принимает массив чисел с плавающей точкой формы (m, n, 3) и значение dpi, а возвращает массив формы (m, n, 3) и два смещения от нижнего левого угла изображения
float или 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
bool или "auto"
bool
str
bool
object
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)
float больше -0.5
неизвестно
неизвестно
неизвестно
(lower: float, upper: float)
str
(bottom: float, top: float)
float больше -0.5
неизвестно
неизвестно
неизвестно
float
Примечания
Изменено в версии 3.8: В версиях до 3.8 любой существующий Axes, перекрывающийся с новым Axes не только по границе, удалялся. В более новых версиях удаление больше не выполняется. При необходимости используйте явный вызов
Axes.remove.Если такое поведение нежелательно, используйте метод
Figure.add_subplotили функциюpyplot.axes.Если kwargs не переданы и в положении, заданном аргументом args, уже существует Axes, будет возвращён этот Axes, а не создан новый.
Если переданы kwargs и в положении, заданном аргументом args, уже существует Axes с таким же типом проекции, а значения kwargs совпадают с параметрами существующего Axes, будет возвращён существующий Axes. В противном случае будет создан новый Axes с указанными параметрами. Для этого сравнения сохраняется ссылка на kwargs. Если какие-либо значения в kwargs изменяемы, изменения этих значений не будут обнаружены. В таких случаях рекомендуется использовать
Figure.add_subplotи явный API Axes вместо неявного API pyplot.Примеры
plt.subplot(221) # equivalent but more general ax1 = plt.subplot(2, 2, 1) # add a subplot with no frame ax2 = plt.subplot(222, frameon=False) # add a polar subplot plt.subplot(223, projection='polar') # add a red subplot that shares the x-axis with ax1 plt.subplot(224, sharex=ax1, facecolor='red') # delete ax2 from the figure plt.delaxes(ax2) # add ax2 to the figure again plt.subplot(ax2) # make the first Axes "current" again plt.subplot(221)
Примеры использования matplotlib.pyplot.subplot
Управление пределами отображения с помощью отступов и sticky_edges
© 2012–2026 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/stable/api/_as_gen/matplotlib.pyplot.subplot.html