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, ncols : int, optional, default: 1 -
Количество строк/столбцов сетки подграфиков.
-
sharex, sharey : bool or {'none', 'all', 'row', 'col'}, default: 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(). -
squeeze : bool, optional, default: True -
-
Если True, из возвращаемого массива осей отбрасываются дополнительные измерения:
- если создан только один подграфик (nrows=ncols=1), возвращается единственный объект Axes как скаляр.
- для Nx1 или 1xM подграфиков, возвращаемый объект — это одномерный массив numpy объектов Axes.
- для NxM, подграфиков с N>1 и M>1 возвращаются как двумерный массив.
- Если False, никакого сжатия не происходит: возвращаемый объект Axes всегда является двумерным массивом, содержащим экземпляры Axes, даже если он оказывается 1x1.
-
-
subplot_kw : dict, optional -
Словарь с ключевыми словами, передаваемыми в вызов
add_subplot()для создания каждого подграфика. -
gridspec_kw : dict, optional -
Словарь с ключевыми словами, передаваемыми конструктору
GridSpec, используемому для создания сетки, на которой размещаются подграфики. - **fig_kw :
-
Все дополнительные ключевые слова передаются в вызов
figure().
Возвращает: -
fig : matplotlib.figure.Figure object -
ax : Axes object or array of Axes objects. -
ax может быть как единственным объектом
matplotlib.axes.Axes, так и массивом объектов Axes, если было создано более одного подграфика. Размеры результирующего массива можно контролировать с помощью ключевого слова squeeze, см. выше.
Примеры
Сначала создадим некоторые тестовые данные:
>>> x = np.linspace(0, 2*np.pi, 400) >>> y = np.sin(x**2)
Создаёт только фигуру и только один подграфик
>>> fig, ax = plt.subplots() >>> ax.plot(x, y) >>> ax.set_title('Simple plot')Создаёт два подграфика и сразу распаковывает результирующий массив
>>> f, (ax1, ax2) = plt.subplots(1, 2, sharey=True) >>> ax1.plot(x, y) >>> ax1.set_title('Sharing Y axis') >>> ax2.scatter(x, y)Создаёт четыре полярные оси и получает доступ к ним через возвращаемый массив
>>> fig, axes = plt.subplots(2, 2, subplot_kw=dict(polar=True)) >>> axes[0, 0].plot(x, y) >>> axes[1, 1].scatter(x, y)
Разделяют ось X со столбцами подграфиков
>>> plt.subplots(2, 2, sharex='col')
Разделяют ось Y со строками подграфиков
>>> plt.subplots(2, 2, sharey='row')
Разделяют оси X и Y со всеми подграфиками
>>> plt.subplots(2, 2, sharex='all', sharey='all')
Обратите внимание, что это то же самое, что
>>> plt.subplots(2, 2, sharex=True, sharey=True)
-
Примеры использования matplotlib.pyplot.subplots
END_OF_DOCUMENT_MARKER END_OF_DOCUMENT_MARKER END_OF_DOCUMENT_MARKER END_OF_DOCUMENT_MARKER END_OF_DOCUMENT_MARKER
© 2012–2018 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/2.2.3/api/_as_gen/matplotlib.pyplot.subplots.html