Matplotlib
-
Медіафайли у Вікісховищі
matplotlib — бібліотека на мові програмування Python для візуалізації даних двовимірною 2D графікою (3D графіка також підтримується). Отримувані зображення можуть бути використані як ілюстрації в публікаціях[4].
matplotlib написана і підтримується в основному Джоном Хантером[en] і поширюється на умовах 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[ru] («сирий» формат)
- SVG
- SVGZ
- TIFF
Крім того, на основі класів пакету можна створювати й інші модулі. Наприклад, для генерування спарклайнів[13].
Порівняння з MATLAB
Інтерфейс pylab дозволяє легко використовувати matplotlib досвідченими користувачами MATLAB.
Нижче наведені деякі переваги використання matplotlib, як аналогу MATLAB:
- вбудована підтримка SVG;
- є відкритим програмним забезпеченням;
- безкоштовний.
Приклад
![](http://upload.wikimedia.org/wikipedia/commons/thumb/1/15/MatPlotLib_SimplePlot.png/300px-MatPlotLib_SimplePlot.png)
Наступний приклад ілюструє побудову графіка[4]:
from pylab import * plot(range(1, 20), [i * i for i in range(1, 20)], 'ro') savefig('example.png') show()
Галерея графіків
-
-
-
- Квазідворічні коливання[en]
-
-
Див. також
Примітки
- ↑ 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.55d:Track:Q17278583d:Track:Q17278587d:Track:Q15763869d:Track:Q27991300
- ↑ https://matplotlib.org/stable/users/license.html?highlight=free%20open%20source
- ↑ https://matplotlib.org/stable/users/installing.html#installing-an-official-release
- ↑ а б Segaran, 2007.
- ↑ Tosi, 2009.
- ↑ Запис про matplotlib [Архівовано 4 липня 2015 у Wayback Machine.](англ.) на PyPI
- ↑ http://matplotlib.sourceforge.net/users/intro.html [Архівовано 7 вересня 2012 у Wayback Machine.] Вступ з документації по бібліотеці
- ↑ Вимоги для інсталяції. Архів оригіналу за 15 травня 2011. Процитовано 31 липня 2015.
- ↑ Екран допомоги по пакету pylab можна інтерактивно викликати командами
import pylab; help(pylab)
- ↑ Vaingast, 2009, с. 183—220.
- ↑ mplot3d. Архів оригіналу за 7 вересня 2012. Процитовано 31 липня 2015.
- ↑ Animation API. Архів оригіналу за 2 липня 2012. Процитовано 31 липня 2015.
- ↑ Grig Gheorghiu (23 April, 2005). sparkplot: creating sparklines with matplotlib. Архів оригіналу за 19 серпня 2012. Процитовано 31 липня 2015.
Література
- 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 [Архівовано 21 лютого 2018 у Wayback Machine.](англ.)
- «Книга рецептів» Matplotlib [Архівовано 2 грудня 2006 у Wayback Machine.](англ.)
- Відеолекція Джона Д.Хантера (John D. Hunter) [Архівовано 26 червня 2015 у Wayback Machine.](англ.)
- Серія статей про використання Matplotlib [Архівовано 22 вересня 2015 у Wayback Machine.](рос.)
В іншому мовному розділі є повніша стаття matplotlib(англ.). Ви можете допомогти, розширивши поточну статтю за допомогою перекладу з англійської.
|
- п
- о
- р
- NumPy
- SciPy
- matplotlib
- pandas
- scikit-learn
- scikit-image[en]
- MayaVi[en]
- ще