Ссылка на API
При использовании библиотеки обычно создаются объекты Figure и Axes и вызываются их методы для добавления содержимого и изменения внешнего вида.
-
matplotlib.figure: создание осей, содержимое на уровне фигуры -
matplotlib.axes: большинство методов построения графиков, подписи осей, доступ к стилизации осей и т. д.
Пример: мы создаём объект Figure fig и Axes ax. Затем мы вызываем методы на них для построения данных, добавления подписей осей и заголовка фигуры.
import matplotlib.pyplot as plt
import numpy as np
x = np.arange(0, 4, 0.05)
y = np.sin(x*np.pi)
fig, ax = plt.subplots(figsize=(3,2), constrained_layout=True)
ax.plot(x, y)
ax.set_xlabel('t [s]')
ax.set_ylabel('S [V]')
ax.set_title('Sine wave')
fig.set_facecolor('lightsteelblue')
(Исходный код, png)
Паттерны использования
Ниже описаны несколько распространённых подходов к построению графиков с помощью Matplotlib. Смотрите Интерфейсы приложений Matplotlib (API) для объяснения компромиссов между поддерживаемыми пользовательскими API.
Явный API
В основе Matplotlib лежит объектно-ориентированная библиотека. Мы рекомендуем работать непосредственно с объектами, если вам нужен больший контроль и настройка ваших графиков.
Во многих случаях вы создадите Figure и одну или несколько Axes с помощью pyplot.subplots и после этого будете работать только с этими объектами. Однако также можно создать Figure явно (например, при включении их в приложения с графическим интерфейсом).
Дополнительное чтение:
-
matplotlib.axes.Axesиmatplotlib.figure.Figureдля обзора функций построения графиков. - Большинство примеров примеров используют объектно-ориентированный подход (за исключением раздела pyplot).
Неявный API
matplotlib.pyplot — это набор функций, которые позволяют Matplotlib работать, как MATLAB. Каждая функция pyplot производит какое-либо изменение в фигуре: например, создаёт фигуру, создаёт область построения в фигуре, строит некоторые линии в области построения, декорирует график метками и т. д.
pyplot в основном предназначен для интерактивных графиков и простых случаев программного генерации графиков.
Дополнительное чтение:
- Справочник по функциям
matplotlib.pyplot - Учебник по Pyplot
- Примеры Pyplot
API pylab (не рекомендуется)
Предупреждение
Поскольку тяжёлое импортирование в глобальное пространство имён может привести к непредвиденному поведению, использование pylab настоятельно не рекомендуется. Используйте matplotlib.pyplot вместо него.
pylab — это модуль, который включает matplotlib.pyplot, numpy, numpy.fft, numpy.linalg, numpy.random и некоторые дополнительные функции, все в одном пространстве имён. Его первоначальное назначение состояло в имитации работы по типу MATLAB, импортировав все функции в глобальное пространство имён. В настоящее время это считается плохим стилем.
Модули
Алфавитный список модулей:
matplotlibmatplotlib.afmmatplotlib.animationmatplotlib.artistmatplotlib.axesmatplotlib.axismatplotlib.backend_basesmatplotlib.backend_managersmatplotlib.backend_toolsmatplotlib.backendsmatplotlib.beziermatplotlib.blocking_inputmatplotlib.categorymatplotlib.cbookmatplotlib.cmmatplotlib.collectionsmatplotlib.colorbarmatplotlib.colorsmatplotlib.containermatplotlib.contourmatplotlib.datesmatplotlib.docstringmatplotlib.dvireadmatplotlib.figurematplotlib.font_managermatplotlib.fontconfig_patternmatplotlib.ft2fontmatplotlib.gridspecmatplotlib.hatchmatplotlib.imagematplotlib.layout_enginematplotlib.legendmatplotlib.legend_handlermatplotlib.linesmatplotlib.markersmatplotlib.mathtextmatplotlib.mlabmatplotlib.offsetboxmatplotlib.patchesmatplotlib.pathmatplotlib.patheffectsmatplotlib.pyplotmatplotlib.projectionsmatplotlib.quivermatplotlib.rcsetupmatplotlib.sankeymatplotlib.scalematplotlib.sphinxext.mathmplmatplotlib.sphinxext.plot_directivematplotlib.spinesmatplotlib.stylematplotlib.tablematplotlib.testingmatplotlib.textmatplotlib.texmanagermatplotlib.textpathmatplotlib.tickermatplotlib.tight_bboxmatplotlib.tight_layoutmatplotlib.transformsmatplotlib.trimatplotlib.type1fontmatplotlib.unitsmatplotlib.widgetsmatplotlib._apimatplotlib._enumsmpl_toolkits.mplot3dmpl_toolkits.axes_grid1mpl_toolkits.axisartist
© 2012–2023 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.6.0/api/index.html