matplotlib.pyplot.subplot
- matplotlib.pyplot.subplot(*args, **kwargs)[source]
-
Добавление оси к текущей фигуре или получение существующей оси.
Это обёртка для
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 фигуры. - Трехзначное целое число. Цифры интерпретируются так, как если бы они были заданы отдельно как три однозначных целых числа, т.е.
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}, optional
-
Тип проекции подграфика (
Axes). str - имя пользовательской проекции, см.projections. По умолчанию None используется проекция 'rectilinear'. - polarbool, по умолчанию: False
-
Если True, эквивалентно projection='polar'.
-
sharex, sharey
Axes, optional -
Поделиться осью x или y
axisс sharex и/или sharey. Ось будет иметь те же пределы, деления и масштаб, что и ось совмещенной оси. - labelstr
-
Метка возвращаемой оси.
-
*argsint, (int, int, index), или
- Возвращаемое значение:
-
-
axes.SubplotBase, или другой подклассAxes -
Ось подграфика. Возвращаемый базовый класс оси зависит от используемой проекции. Это
Axes, если используется проекция rectilinear, иprojections.polar.PolarAxes, если используется проекция polar. Возвращённая ось является подклассом базового класса подграфика.
-
- Другие параметры:
-
- **kwargs
-
Этот метод также принимает ключевые аргументы для возвращаемого базового класса оси; за исключением аргумента 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
логическое значение
Patch или (Path, Transform) или None
facecolorили fcцвет
логическое значение
строка
логическое значение
объект
логическое значение
логическое значение
неизвестно
None или логическое значение или число с плавающей точкой или вызываемый объект
[левое, нижнее, ширина, высота] или
Bboxнеизвестно
число с плавающей точкой или None
логическое значение
(масштаб: число, длина: число, случайность: число)
логическое значение или None
строка
строка
логическое значение
неизвестно
строка
(нижнее: число, верхнее: число)
число больше -0.5
неизвестно
неизвестно
неизвестно
неизвестно
строка
Примечания
Создание нового Axes удалит любые существующие Axes, которые перекрываются с ним, кроме случаев, когда они делят общую границу:
import matplotlib.pyplot as plt # plot a line, implicitly creating a subplot(111) plt.plot([1, 2, 3]) # now create a subplot which represents the top plot of a grid # with 2 rows and 1 column. Since this subplot will overlap the # first, the plot (and its axes) previously created, will be removed plt.subplot(211)
Если вы не хотите такого поведения, используйте метод
Figure.add_subplotили функциюpyplot.axesвместо этого.Если не передано никаких kwargs и существует Axes в указанном args расположении, то это Axes будет возвращено, а не создано новое.
Если переданы kwargs и существует Axes в указанном args расположении, тип проекции совпадает, а 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–2023 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.6.0/api/_as_gen/matplotlib.pyplot.subplot.html