matplotlib.pyplot.subplots
- matplotlib.pyplot.subplots(nrows=1, ncols=1, *, sharex=False, sharey=False, squeeze=True, width_ratios=None, height_ratios=None, subplot_kw=None, gridspec_kw=None, **fig_kw)[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.Когда подграфики имеют общую ось с единицами измерения, вызов
set_unitsобновит каждую ось с новыми единицами. - squeezebool, по умолчанию: True
-
-
Если True, лишние измерения сжимаются из возвращаемого массива
Axes:- если создан только один подграфик (nrows=ncols=1), возвращается единственный объект Axes в качестве скаляра.
- для Nx1 или 1xM подграфиков, возвращаемый объект — это 1D массив NumPy из объектов Axes.
- для NxM подграфиков, где N>1 и M>1, возвращается 2D массив.
- Если False, сжатие не выполняется: возвращаемый объект Axes всегда является 2D массивом, содержащим экземпляры 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_kwсловарь, необязательно
-
Словарь с ключевыми словами, передаваемыми вызову
add_subplotдля создания каждого подграфика. - gridspec_kwсловарь, необязательно
-
Словарь с ключевыми словами, передаваемыми конструктору
GridSpec, используемому для создания сетки, на которой размещаются подграфики. - **fig_kw
-
Все дополнительные ключевые аргументы передаются в вызов
pyplot.figure.
- Возвращаемые значения:
-
-
fig
Figure -
ax
Axesили массив осей -
ax может быть либо одним объектом
Axes, либо массивом объектов Axes, если было создано более одного подграфика. Размеры возвращаемого массива можно контролировать с помощью ключевого слова squeeze, см. выше.Типичные способы работы со значением возврата:
# using the variable ax for single a Axes fig, ax = plt.subplots() # using the variable axs for multiple Axes fig, axs = plt.subplots(2, 2) # using tuple unpacking for multiple Axes fig, (ax1, ax2) = plt.subplots(1, 2) fig, ((ax1, ax2), (ax3, ax4)) = plt.subplots(2, 2)
Имена
axи множественное числоaxsпредпочтительнееaxes, так как для последнего неясно, относится ли оно к одному экземпляруAxesили к набору таких экземпляров.
-
fig
Примеры
# First create some toy data: x = np.linspace(0, 2*np.pi, 400) y = np.sin(x**2) # Create just a figure and only one subplot fig, ax = plt.subplots() ax.plot(x, y) ax.set_title('Simple plot') # Create two subplots and unpack the output array immediately f, (ax1, ax2) = plt.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 fig, axs = plt.subplots(2, 2, subplot_kw=dict(projection="polar")) axs[0, 0].plot(x, y) axs[1, 1].scatter(x, y) # Share a X axis with each column of subplots plt.subplots(2, 2, sharex='col') # Share a Y axis with each row of subplots plt.subplots(2, 2, sharey='row') # Share both X and Y axes with all subplots plt.subplots(2, 2, sharex='all', sharey='all') # Note that this is the same as plt.subplots(2, 2, sharex=True, sharey=True) # Create figure number 10 with a single subplot # and clears it if it already exists. fig, ax = plt.subplots(num=10, clear=True)
Примеры использования matplotlib.pyplot.subplots
Дискретное распределение как горизонтальная столбчатая диаграмма
Сопоставление свойств маркеров с многомерными данными
Создание временной шкалы с линиями, датами и текстом
Отображение области решений оптимизации с помощью контуров
Смешивание прозрачности с цветом на 2D изображениях
Карта контуров для неравномерно расположенных данных
Управление пределами отображения с помощью отступов и sticky_edges
Изменение размера осей с помощью ограниченного макета
Объединение двух подграфиков с помощью subplots и GridSpec
Создание нескольких подграфиков с помощью plt.subplots
Диаграммы размаха с настраиваемыми цветами заливки
Построение эллипса доверительности двумерного набора данных
Создание прямоугольников из погрешностей с помощью PatchCollection
Использование гистограмм для построения кумулятивного распределения
Демонстрация различных настроек параметра histtype функции histogram
Функция гистограммы (hist) с несколькими наборами данных
Построение нескольких гистограмм рядом друг с другом
Использование текста с диакритическими знаками в Matplotlib
Форматирование меток осей с помощью инженерной записи
Отображение математических уравнений с помощью TeX
Коллекция линий, многоугольников и правильных многоугольников с автоматическим масштабированием
Отображение цветовых каналов RGB с помощью RGBAxes
Управление позицией и размером цветовых шкал с помощью вставленных осей
Диаграмма рассеяния с гистограммами (размещаемые оси)
Анимированное изображение с использованием предварительно вычисленного списка изображений
Построение гистограмм с помощью прямоугольников и PolyCollections
Демонстрация симметричного логарифмического масштабирования
Диаграмма радиального распределения (в виде паука или звезды)
Форматирование меток дат с использованием ConciseDateFormatter
Пользовательский форматер меток для временных рядов
Групповая диаграмма столбцов с единицами измерения
Выбрать индексы из коллекции с помощью селектора многоугольника
Пороговое значение изображения с помощью RangeSlider
Привязка значений ползунков к дискретным значениям
© 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.subplots.html