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 фигуры. - Целое число из 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, default: False
-
Если True, эквивалентно projection='polar'.
-
sharex, sharey
Axes, optional -
Поделиться осью x или y с sharex и/или sharey. Ось будет иметь те же пределы, деления и масштаб, что и ось у совмещённой оси.
- labelstr
-
Метка для возвращаемой области построения графиков.
Возвращаемое значение: -
axes.SubplotBase, или другой подклассAxes -
Область построения графиков подграфика. Базовый класс возвращаемой области построения графиков зависит от используемой проекции. Это
Axes, если используется проекция rectilinear, иprojections.polar.PolarAxes, если используется проекция polar. Возвращаемая область построения графиков является подклассом подграфика базвого класса.
Другие параметры: - **kwargs
-
Этот метод также принимает ключевые аргументы для возвращаемого базового класса области построения графиков; за исключением аргумента figure. Ключевые аргументы для прямолинейного базового класса
Axesможно найти в следующей таблице, но могут быть и другие ключевые аргументы, если используется другая проекция.
-
*argsint, (int, int, index), или
Свойство Описание adjustable{'box', 'datalim'} agg_filterфункция фильтра, которая принимает массив float (m, n, 3) и значение dpi, и возвращает массив (m, n, 3) alphaскаляр или None anchor2-кортеж чисел с плавающей точкой или {'C', 'SW', 'S', 'SE', ...} animatedbool aspect{'auto', 'equal'} или число с плавающей точкой autoscale_onbool autoscalex_onbool autoscaley_onbool axes_locatorCallable[[Axes, Renderer], Bbox] axisbelowbool или 'line' box_aspectчисло с плавающей точкой или None clip_boxBboxclip_onbool clip_pathPatch или (Path, Transform) или None containsнеизвестно facecolorили fcцвет figureFigureframe_onbool gidстрока in_layoutbool labelобъект navigatebool navigate_modeнеизвестно path_effectsAbstractPathEffectpickerNone или bool или число с плавающей точкой или вызываемая функция position[левый, нижний, ширина, высота] или Bboxprop_cycleнеизвестно rasterization_zorderчисло с плавающей точкой или None rasterizedbool sketch_params(масштаб: float, длина: float, случайность: float) snapbool или None titleстрока transformTransformurlстрока visiblebool xboundнеизвестно xlabelстрока xlim(нижняя граница: float, верхняя граница: float) xmarginчисло с плавающей точкой, большее, чем -0,5 xscale{"линейный", "логарифмический", "симлогарифмический", "логит", ...} или ScaleBasexticklabelsнеизвестно xticksнеизвестно yboundнеизвестно ylabelстрока ylim(нижняя граница: float, верхняя граница: float) ymarginчисло с плавающей точкой, большее, чем -0,5
yscale{"линейный", "логарифмический", "симлогический", "логит", ...} или ScaleBaseyticklabelsнеизвестно yticksнеизвестно zorderfloat
Примечания
Создание нового 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 будет возвращен вместо создания нового 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
END_OF_DOCUMENT_MARKER
© 2012–2021 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.4.3/api/_as_gen/matplotlib.pyplot.subplot.html