Matplotlib
matplotlib | |||
---|---|---|---|
![]() | |||
![]() Пример работы matplotlib | |||
Тип | библиотека языка Python | ||
Автор | Джон Д. Хантер[вд][3] | ||
Разработчик | John Hunter | ||
Написана на | Python, C++ | ||
Интерфейс | GTK и Qt | ||
Движки | cairo и Anti-Grain Geometry[вд] | ||
Операционная система | Кроссплатформенное программное обеспечение | ||
Первый выпуск | 2003[1] | ||
Аппаратная платформа | Python | ||
Последняя версия | 1.3.0[2] (31 июля 2013) | ||
Репозиторий | github.com/matplotlib/ma… | ||
| |||
Лицензия | matplotlib licence | ||
Сайт | matplotlib.sourceforge.net | ||
![]() |
Matplotlib — библиотека на языке программирования Python для визуализации данных двумерной (2D) графикой (3D графика также поддерживается). Получаемые изображения могут быть использованы в качестве иллюстраций в публикациях[4]. Matplotlib написан и поддерживался в основном Джоном Хантером (англ. John Hunter) и распространяется на условиях BSD-подобной лицензии. Генерируемые в различных форматах изображения могут быть использованы в интерактивной графике, в научных публикациях, графическом интерфейсе пользователя, веб-приложениях, где требуется построение диаграмм (англ. plotting)[5][6]. В документации автор признаётся, что Matplotlib начинался с подражания графическим командам MATLAB, но является независимым от него проектом[7].
Версия 1.2.0 — последняя стабильная — требует Python версии от 2.6 и выше и версию NumPy от 1.4 и выше[8].
Библиотека Matplotlib построена на принципах ООП, но имеет процедурный интерфейс pylab
, который предоставляет аналоги команд MATLAB[9].
Возможности
Matplotlib является гибким, легко конфигурируемым пакетом, который вместе с NumPy, SciPy и IPython предоставляет возможности, подобные MATLAB. В настоящее время пакет работает с несколькими графическими библиотеками, включая wxWindows и PyGTK.
Пакет поддерживает многие виды графиков и диаграмм:
- Графики (line plot)
- Диаграммы разброса (scatter plot)
- Столбчатые диаграммы (bar chart) и гистограммы (histogram)
- Круговые диаграммы (pie chart)
- Ствол-лист диаграммы (stem plot)
- Контурные графики (contour plot)
- Поля градиентов (quiver)
- Спектральные диаграммы (spectrogram)
Пользователь может указать оси координат, решетку, добавить надписи и пояснения, использовать логарифмическую шкалу или полярные координаты[10].
Несложные трёхмерные графики можно строить с помощью набора инструментов (toolkit) mplot3d. Есть и другие наборы инструментов: для картографии, для работы с Excel, утилиты для GTK и другие[11].
С помощью Matplotlib можно делать и анимированные изображения[12].
Набор поддерживаемых форматов изображений, векторных и растровых, можно получить из словаря FigureCanvasBase.filetypes
. Типичные поддерживаемые форматы:
- Encapsulated PostScript (EPS)
- Enhanced Metafile (EMF)
- JPEG
- PNG
- Postscript
- RGBA («сырой» формат)
- SVG
- SVGZ
- TIFF
Кроме того, на основе классов пакета можно создавать и другие модули. Например, для генерации искрографиков[13].
Пример
Следующий пример иллюстрирует построение графика[4]:
from pylab import *
plot(range(1, 20),
[i * i for i in range(1, 20)], 'ro')
savefig('example.png')
show()
Результат работы примера в формате PNG:

Галерея графиков
Примечания
- ↑ https://matplotlib.org/users/license.html#copyright-policy
- ↑ Matplotlib 1.3.0 overview
- ↑ Hunter J. D. Matplotlib: A 2D Graphics Environment (англ.) // Computing in Science and Engineering — AIP Publishing, 2007. — Vol. 3, Iss. 1. — P. 766. — ISSN 1521-9615; 1558-366X — doi:10.1109/MCSE.2007.55
- ↑ 1 2 Segaran, 2007.
- ↑ Tosi, 2009.
- ↑ Запись о matplotlib (англ.) на PyPI
- ↑ http://matplotlib.sourceforge.net/users/intro.html Введение из документации по библиотеке
- ↑ Требования для инсталляции
- ↑ Экран помощи по пакету pylab можно интерактивно вызвать командами
import pylab; help(pylab)
- ↑ Vaingast, 2009, pp. 183-220.
- ↑ mplot3d
- ↑ Animation API
- ↑ Grig Gheorghiu. sparkplot: creating sparklines with matplotlib (23 April, 2005). Архивировано 19 августа 2012 года.
Литература
- Toby Segaran. Programming Collective Intelligence: Building Smart Web 2.0 Applications. — O'Reilly Media, Inc., 2007. — 308 с. — ISBN 9780596529321. Имеется перевод: Тоби Сегаран. Программируем коллективный разум. — Символ-Плюс, 2009. — 368 с. — ISBN 5-93286-119-3.
- Sandro Tosi. Matplotlib for Python Developers. — Packt Publishing, 2009. — 308 с. — ISBN 978-1847197900.
- Shai Vaingast. Beginning Python Visualization: Crafting Visual Transformation Scripts. — Springer, 2009. — 384 с. — ISBN 9781430218432.
Ссылки
- Домашняя страница Matplotlib (англ.)
- «Поваренная книга» Matplotlib (англ.)
- Видеолекция Джона Д.Хантера (John D. Hunter) (англ.)
- Серия статей про использование Matplotlib (рус.)
Это заготовка статьи о программном обеспечении. Помогите Википедии, дополнив её. |