Gördítse végig a Python Package Indexet, és gyakorlatilag minden adatvizualizációs igényhez talál könyvtárakat – a GazeParsertől a szemmozgás kutatásához a pastalogig a neurális hálózatok képzésének valós idejű vizualizálásához. És bár e könyvtárak közül sokan intenzíven összpontosítanak egy adott feladat elvégzésére, néhányuk a szakterülettől függetlenül használható.
Ez a lista 10 interdiszciplináris Python adatvizualizációs könyvtár áttekintése, a jól ismertektől az ismeretlenekig. A Mode Python Notebookok három könyvtárat támogatnak ezen a listán – matplotlib, Seaborn és Plotly – és több mint 60 másikat, amelyeket a Notebook támogatás oldalunkon fedezhet fel.
Reméljük, hogy ezek a listák inspirálják Önt, és ha olyan könyvtárat szeretne hozzáadni, amely nem szerepel a listán, használja a további könyvtárak telepítésére vonatkozó utasításainkat, vagy küldjön egy üzenetet a modeanalytics sikerére .
- Matplotlib
- Seaborn
- ggplot
- Bokeh
- pygal
- Plotly
- geoplotlib
- Gleam
- missingno
- Leather
matplotlib
Két hisztogram (matplotlib)
matplotlib az O.G. a Python adatvizualizációs könyvtárak között. Annak ellenére, hogy már több mint egy évtizedes, még mindig ez a Python közösség legszélesebb körben használt könyvtára a grafikus ábrázoláshoz. Úgy tervezték, hogy nagyon hasonlítson az 1980-as években kifejlesztett MATLAB-hoz, egy saját fejlesztésű programozási nyelvhez.
Mivel a matplotlib volt az első Python adatvizualizációs könyvtár, sok más könyvtár épül rá, vagy úgy tervezték, hogy az elemzés során vele együtt működjön. Néhány könyvtár, mint a pandas és a Seaborn “wrapper” a matplotlib felett. Ezek lehetővé teszik a matplotlib számos metódusának elérését kevesebb kóddal.
Míg a matplotlib jó az adatok érzékeltetésére, nem túl hasznos publikációs minőségű diagramok gyors és egyszerű elkészítéséhez. Ahogy Chris Moffitt rámutat a Python vizualizációs eszközökről szóló áttekintésében, a matplotlib “rendkívül erős, de ezzel a hatalommal együtt jár a komplexitás is.”
A matplotlib-et régóta kritizálják az alapértelmezett stílusai miatt, amelyeknek határozott 1990-es évekbeli hangulata van. A matplotlib 2.0 közelgő kiadása számos új stílusváltozást ígér ennek a problémának a kezelésére.
Created by: John D. Hunter, elérhető a Mode-ban
Hol tudhat meg többet: matplotlib.org
Kipróbálja a matplotlib-et a Mode-ban.
Seaborn
Violinplot (Michael Waskom)
Seaborn kihasználja a matplotlib erejét, hogy néhány sornyi kóddal gyönyörű grafikonokat hozzon létre. A legfontosabb különbség a Seaborn alapértelmezett stílusai és színpalettái, amelyeket úgy terveztek, hogy esztétikusabbak és modernebbek legyenek. Mivel a Seaborn a matplotlib-re épül, a Seaborn alapértelmezett beállításaihoz ismernie kell a matplotlib-et.
Created by: Michael Waskom, elérhető a Mode
Hol lehet többet megtudni: http://web.stanford.edu/~mwaskom/software/seaborn/index.html
Próbáld ki a Seabornt a Mode-ban.
ggplot
Kis sokszorosok (ŷhat)
Azggplot a ggplot2-n, egy R plotting rendszeren és a The Grammar of Graphicsból származó fogalmakon alapul. ggplot másképp működik, mint a matplotlib: lehetővé teszi a komponensek rétegzését egy teljes plot létrehozásához. Kezdhetjük például a tengelyekkel, majd hozzáadhatunk pontokat, aztán egy vonalat, egy trendvonalat stb. Bár a The Grammar of Graphics-ot dicsérték, mint a plotkészítés “intuitív” módszerét, a matplotlib tapasztalt felhasználóinak időre lehet szükségük, hogy alkalmazkodjanak ehhez az új gondolkodásmódhoz.
A ggplot-ot a készítője szerint nem nagyon testre szabott grafikák készítésére tervezték. Feláldozza a komplexitást egy egyszerűbb ábrázolási módszerért.
A ggplot szorosan integrálódik a pandas-szal, ezért a ggplot használatakor a legjobb, ha az adatokat DataFrame-ben tároljuk.
Created by: ŷhat
Hol lehet többet megtudni: http://ggplot.yhathq.com/
Bokeh
Interaktív időjárási statisztikák három városra (Continuum Analytics)
A ggplot-hoz hasonlóan a Bokeh is a The Grammar of Graphics-on alapul, de a ggplot-tól eltérően natív Python, nem az R-ből portolták át. Erőssége abban rejlik, hogy interaktív, webképes ábrákat készíthet, amelyeket könnyen ki lehet adni JSON objektumként, HTML dokumentumként vagy interaktív webes alkalmazásként. A Bokeh támogatja a streaming és a valós idejű adatokat is.
A Bokeh három különböző szintű kezelőfelületet biztosít a különböző felhasználói típusok számára. A legmagasabb szint a diagramok gyors létrehozására szolgál. Olyan gyakori diagramok, mint a sávdiagramok, dobozdiagramok és hisztogramok létrehozására szolgáló módszereket tartalmaz. A középső szint ugyanolyan specifikus, mint a matplotlib, és lehetővé teszi az egyes diagramok alapvető építőelemeinek (például a pontok egy szórásdiagramban) vezérlését. A legalsó szint a fejlesztők és szoftvermérnökök számára készült. Nincsenek előre beállított alapértelmezések, és a diagram minden elemét magának kell definiálnia.
Created by: Continuum Analytics
Hol tudhat meg többet: http://bokeh.pydata.org/en/latest/
pygal
Box plot (Florian Mounier)
A pygal a Bokeh-hez és a Plotly-hoz hasonlóan interaktív ábrákat kínál, amelyek beágyazhatók a webböngészőbe. Legfőbb megkülönböztető jegye, hogy a grafikonokat SVG-ként is ki tudja adni. Amíg kisebb adatkészletekkel dolgozol, addig az SVG-k is megfelelnek. Ha azonban több százezer adatpontból álló grafikonokat készít, azok renderelése nehézségekbe ütközik és lassúvá válik.
Mivel minden egyes diagramtípus egy metódusba van csomagolva, és a beépített stílusok szépek, könnyen, néhány sornyi kóddal szépen kinéző diagramot készíthetünk.
Created by: Florian Mounier
Hol lehet többet megtudni: http://www.pygal.org/en/latest/index.html
Plotly
Line plot (Plotly)
A Plotly-t talán az adatvizualizáció online platformjaként ismeri, de azt is tudta, hogy Python notebookból is elérheti a képességeit? A Bokeh-hez hasonlóan a Plotly erőssége az interaktív ábrák készítése, de olyan ábrákat is kínál, amelyeket a legtöbb könyvtárban nem találsz, például kontúrábrákat, dendogramokat és 3D-s ábrákat.
Created by: Plotly, elérhető a Mode
Hol tudhat meg többet: https://plot.ly/python/
Próbálja ki a Plotly-t a Mode-ban.
geoplotlib
Choropleth (Andrea Cuttone)
Ageoplotlib egy eszköztár térképek készítéséhez és földrajzi adatok ábrázolásához. Különböző térkép-típusok, például choropleth, heatmaps és pontsűrűség-térképek létrehozására használhatjuk. A geoplotlib használatához telepítve kell lennie a Pygletnek (objektumorientált programozási felület). Mindazonáltal, mivel a legtöbb Python adatvizualizációs könyvtár nem kínál térképeket, jó, hogy van egy kizárólag nekik szánt könyvtár.
Created by: Andrea Cuttone
Hol lehet többet megtudni: https://github.com/andrea-cuttone/geoplotlib
Gleam
Scatter plot with trend line (David Robinson)
A Gleam-et az R Shiny csomagja ihlette. Lehetővé teszi, hogy az elemzéseket interaktív webes alkalmazásokká alakítsuk át, kizárólag Python szkriptek segítségével, így nem kell ismernünk más nyelveket, például HTML-t, CSS-t vagy JavaScriptet. A Gleam bármilyen Python adatvizualizációs könyvtárral működik. Miután létrehozott egy ábrát, építhet rá mezőket, így a felhasználók szűrhetik és rendezhetik az adatokat.
Created by: David Robinson
Hol lehet többet megtudni: https://github.com/dgrtwo/gleam
missingno
Teljességi mátrix (Aleksey Bilogur)
A hiányzó adatok kezelése fájdalmas. missingno lehetővé teszi, hogy gyorsan felmérje egy adathalmaz teljességét egy vizuális összefoglaló segítségével, ahelyett, hogy egy táblázatban bogarászna. Szűrheti és rendezheti az adatokat a teljesség alapján, vagy kiszúrhatja az összefüggéseket egy hőtérkép vagy egy dendrogram segítségével.
Created by: Aleksey Bilogur
Hol lehet többet megtudni: https://github.com/ResidentMario/missingno
Leather
Grafikonrács konzisztens skálákkal (Christopher Groskopf)
Leather alkotója, Christopher Groskopf fogalmazta meg a legjobban: “A Leather a Python grafikonkönyvtár azok számára, akiknek most van szükségük grafikonokra, és nem érdekli őket, hogy tökéletesek-e”. Úgy tervezték, hogy minden adattípussal működjön, és a grafikonokat SVG-ként állítja elő, így a képminőség romlása nélkül méretezhetők. Mivel ez a könyvtár viszonylag új, a dokumentáció egy része még fejlesztés alatt áll. Az elkészíthető diagramok meglehetősen egyszerűek – de ez a szándék.
Created by: Christopher Groskopf
Hol lehet többet megtudni: https://leather.readthedocs.io/en/latest/index.html
Más nagyszerű olvasmányok a Python adatvizualizációról
Egy csomó nagyszerű értékelés és áttekintés van a Python adatvizualizációs könyvtárakról. Nézz meg néhányat a kedvenceink közül:
- One Chart, Twelve Charting Libraries (Lisa Charlotte Rost)
- Overview of Python Visualization Tools (Practical Business Python)
- Python data visualization: 7 eszköz összehasonlítása (Dataquest.io)