matplotlib.pyplot.subplots
- matplotlib.pyplot.subplots(nrows=1, ncols=1, *, sharex=False, sharey=False, squeeze=True, 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 подграфиков, возвращается одномерный массив numpy объектов Axes.
- для NxM, подграфиков с N>1 и M>1 возвращается двумерный массив.
- Если False, никакое сжатие не выполняется: возвращаемый объект Axes всегда является двумерным массивом, содержащим объекты Axes, даже если он оказывается 1x1.
-
- subplot_kwdict, необязательно
-
Словарь с ключевыми словами, передаваемыми в вызов
add_subplotдля создания каждого подграфика. - gridspec_kwdict, необязательно
-
Словарь с ключевыми словами, передаваемыми конструктору
GridSpec, используемому для создания сетки, на которой размещаются подграфики. - **fig_kw
-
Все дополнительные ключевые аргументы передаются в вызов
pyplot.figure.
- Возвращает
-
-
fig
Figure -
ax
axes.Axesили массив 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
© 2012–2021 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.5.1/api/_as_gen/matplotlib.pyplot.subplots.html