A matplotlib egy, a Python programozási nyelvhez, és annak numerikus matematikai kiterjesztéséhez, a NumPy-hoz írt ábrázoló könyvtár. Objektumorientált API-val szolgál a plotok felhasználásba történő beágyazásához általános GUI-eszköztárak használatával, mint például a Tkinter, wxPython, Qt, vagy a GTK. Továbbá rendelkezik egy eljáráshoz szükséges „pylab” felülettel, egy állapotgép alapján (mint az OpenGL), amelyet úgy terveztek, hogy hasonlítson a MATLAB felületére, bár használata nem ajánlott.[1] A SciPy is a matplotlib-et alkalmazza.

Matplotlib

FejlesztőMichael Droettboom, és mások"
Első kiadás2003
Legfrissebb stabil kiadás3.6.2
(November 3. 2022)
Programozási nyelvPython
Operációs rendszerCross-platform
PlatformPython
KategóriaPlotting
LicencMatplotlib license
[matplotlib.org A Matplotlib weboldala]

A matplotlibet eredetileg John D. Hunter írta. Azóta aktív fejlesztőközösség dolgozik rajta,[2] és BSD-típusú licenc alatt terjeszthető. Michael Droettboomot jelölték ki a matplotlib vezető fejlesztőjévé, röviddel John Hunter 2012 augusztusában bekövetkezett halála előtt.[2] Később Thomas Caswell is csatlakozott hozzá ebben a pozícióban.[3][4] A matplotlib egy NumFOCUS által szponzorált projekt.[5]

A matplotlib 2.0.x támogatja a Python verziókat a 2.7-től a 3.10-ig. A Python 3 támogatása a matplotlib 1.2.-vel kezdődött. A matplotlib 1.4 az utolsó verzió, ami támogatja a Python 2.6-ot.[6] A könyvtár a Python 3 Statement aláírásával elköteleződött amellett, hogy ne támogassa a Python 2-t 2020 után.[7]

A MATLAB-hoz hasonlítva szerkesztés

A Pyplot egy matplotlib modul, ami MATLAB-hoz hasonló felülettel rendelkezik.[8] A matplotlib arra lett tervezve, hogy olyan használható legyen, mint a MATLAB, azzal a előnnyel, hogy lehet Python-ban használni, valamint ingyenes és elérhető mindenki számára.

Példák szerkesztés

Eszköztárak szerkesztés

Több eszköztár is elérhető, amelyek kiterjesztik a matplotlib funkcionalitását. Vannak köztük letölthetők illetve olyanok, amelyeket a matplotlib forráskóddal lehet elérni, de külső függésben állnak.[9]

  • Basemap: térképet plotolhatunk vele több térképprojekció, partvonal, illetve politikai határvonal segítségével.[8]
  • Cartopy: egy térképábrázoló könyvtár, objektumorientált térképprojekciókra vonatkozó definíciókkal, és tetszőleges pont, vonal, sokszög és kép transzformációs adottságokkal.[8]
  • Excel tools: Microsoft Excellel való adatcseréhez szükséges eszközök.
  • GTK tools: Felület a GTK könyvtárhoz.
  • Qt felület
  • Mplot3d: 3-D plotok
  • Natgrid: felület a natgrid könyvtárhoz rendszertelenül elrendezett adatok feldolgozásához.
  • tikzplotlib: exportálja a Pgfplotokat a LaTeX-ba való könnyű integrálásért (korábban matplotlib2tikz néven futott)[10]
  • Seaborn: biztosít egy API-t a matplotlib-re, ami észszerű lehetőségekkel szolgál a plot stílusára és az alapértelmezett színekre, meghatároz egyszerű High-level funkciókat gyakori statisztikai plot típusokhoz, és a Pandas által biztosított funkcionalitással integrál.

Kapcsolódó projektek szerkesztés

  • Biggles[11]
  • Chaco[12]
  • DISLIN
  • GNU Octave
  • Gnuplot-py[13]
  • PLplot – Python binding-ok elérhetőek
  • PyCha[14] – libcairo implementáció
  • PyPlotter[15] – kompatibilis a Jython-nal
  • SageMath – matplotlib-et használ az ábrázoláshoz
  • SciPy (plt ésgplt modulok)
  • wxPython (wx.lib.plot.py modul)
  • Plotly – interaktív, online Matplotlib és Python gráfokhoz
  • Bokeh[16] – Python interaktív vizualizációs könyvtár, ami modern webes keresőket céloz meg prezentáláshoz

Jegyzetek szerkesztés

  1. API Overview. matplotlib.org
  2. a b Matplotlib github stats. matplotlib.org
  3. Matplotlib Lead Developer Explains Why He Can't Fix the Docs—But You Can – NumFOCUS”, NumFOCUS, 2017. október 5. (Hozzáférés: 2018. április 11.) (amerikai angol nyelvű) 
  4. Credits – Matplotlib 2.2.2 documentation. matplotlib.org . (Hozzáférés: 2018. április 11.)
  5. NumFOCUS Sponsored Projects. NumFOCUS. (Hozzáférés: 2021. október 25.)
  6. Installing – Matplotlib 2.0.2 documentation. (Hozzáférés: 2017. június 23.)
  7. Add Matplotlib to list by takluyver · Pull Request #20 · python3statement/python3statement.github.io (angol nyelven). GitHub . (Hozzáférés: 2018. április 11.)
  8. a b c Matplotlib: Python plotting — Matplotlib 3.2.0 documentation. matplotlib.org . (Hozzáférés: 2020. március 14.)
  9. Toolkits. matplotlib.org
  10. Schlömer, Nico: tikzplotlib. GitHub . (Hozzáférés: 2016. november 7.)
  11. Bigglessimple, elegant python plotting. biggles.sourceforge.net. (Hozzáférés: 2010. november 24.)
  12. Chaco. code.enthought.com
  13. Gnuplot.py on. gnuplot-py.sourceforge.net. (Hozzáférés: 2010. november 24.)
  14. PyCha. bitbucket.org. [2013. október 22-i dátummal az eredetiből archiválva]. (Hozzáférés: 2022. december 17.)
  15. PyPlotter - graph plotting. www.eckhartarnold.de . (Hozzáférés: 2020. március 14.)
  16. Bokeh 2.0.0 Documentation. docs.bokeh.org . (Hozzáférés: 2020. március 14.)

Fordítás szerkesztés

  • Ez a szócikk részben vagy egészben a Matplotlib című angol Wikipédia-szócikk ezen változatának fordításán alapul. Az eredeti cikk szerkesztőit annak laptörténete sorolja fel. Ez a jelzés csupán a megfogalmazás eredetét és a szerzői jogokat jelzi, nem szolgál a cikkben szereplő információk forrásmegjelöléseként.