A legnépszerűbb adatvizualizációs eszközök. Mit válasszak?
Az adatelemzés legszexibb része az adatokból kinyert információk és összefüggések vizuális megjelenítése. Sokan ezeken a vizuális eszközökön keresztül találkoznak az adatelemzéssel. Sokszor az adatelemzéseken alapuló döntéseket is ilyen eszközök segítségével hozzák meg. De az adatok vizualizációja a data scientist munkájának, az adatelemzés folyamatának is egy kihagyhatatlan lépése. Milyen eszközökkel érdemes az adatokat megjeleníteni? Az alábbi cikkben a saját tapasztalataink alapján azt járjuk körbe, hogy milyen célra, milyen adatvizualizációs eszközök a leghatékonyabbak.
Az adatok szemléltetése, ábrázolása különféle adatvizualizációs eszközökkel olyan fontos az adatelemzésben, hogy külön szakterületté vált. Ma már az adatelemzők mellett gyakran szükség van adatvizualizációs szakemberekre is, akik tudják, mit, hogyan és mivel érdemes ábrázolni, hogy az adatokból a legtöbb információt és a legátfogóbb képet kaphassuk. Egy projekt megtervezésekor nagy dilemma, hogy milyen adatvizualizációs eszközzel érhetjük el a kívánt célokat. A lehetőségek tárháza nagyon nagy, a Gartner listáján több, mint 100 BI (Business Intelligence, üzleti intelligencia) platformot sorol fel, és köztük nincsenek említve az egyes programnyelvekbe épített adatvizualizációs eszközök. Vegyük hát sorra a legnépszerűbb és a Dmlab csapata által ajánlott adatvizualizációs eszközöket!
A BI ereje – Power BI
Az adatvizualizációs eszközök között az egyik nagyágyú a Microsoft terméke, a Power BI. Az eszközzel a Microsoft célja az üzleti intelligencia és vizualizáció támogatása. Az ilyen felületeket, ahol több ábrán és mutatón keresztül figyelhetők meg az adatok, dashboardoknak nevezzük. A Power BI-ban szinte minden elképzelhető adatforrásból építhető ilyen információs dashboard. Az eszköz előnye, hogy gyorsan, programozói alaptudás nélkül elsajátíthatjuk az alapvető funkciók használatát és drag-and-rop alapon egy vászonra húzhatjuk a megfelelő vizualizációs elemeket.
Azon kívül, hogy a Gartner listáin a legelőkelőbb helyen szerepel a Power BI, mi a Dmlabban is jó szívvel ajánljuk. Amellett, hogy számos ügyfelünknek készítünk Power BI dashboardokat és vizualizációkat, korábbi blogbejegyzéseinkben is találkozhatsz Power BI alapú megoldásokkal, ilyenek például, amikor az európai forgalmi adatok megváltozását figyeltük meg a koronavírus hatására, vagy a magyarországi lemorzsolódással veszélyeztetett tanulókról készítettünk elemzést.
A mi tapasztalataink:
Ha dashboardok, akkor Power BI. :-) Mindent tud, ami ahhoz kell, hogy az üzleti döntéshozatalt megtámogassa. Könnyen és gyorsan elsajátítható alapszinten, viszont advanced szinten a végtelenségig lehet bonyolítani a képleteket, funkcionalitásokat. Természetesen ennek is vannak hiányosságai, amik elsősorban akkor jönnek szembe, ha már összetettebb dolgokat próbálsz benne összerakni. Ilyenkor némi gondolkodás után a meglévő eszközkészlettel valamilyen workaround előállítható a problémára.
– Huszti Dorottya, Dmlab
A Power BI-ban az a jó, hogy a programozáshoz nem értő ügyfelek is könnyen tudnak az ábrákkal bánni, szűrni dashboardokat, és a számukra szükséges információt kinyerni. Meglepően egyszerű volt vele olyan dashboard nézetet is készíteni, amit az ügyfelünk mobilról is nézegethetett.
– Balogh Nóra, Dmlab
A Power BI-t válaszd, ha…
- nem értesz a vizualizációs eszközökhöz
- gyors drag-and-drop vizualizációt szeretnél
- üzleti környezetben szeretnél dashboardokat látni/készíteni
- mobilodról szeretnéd nézni, hogyan alakulnak a trendek
- valós időben frissülő dashboardokat szeretnél
Ha szeretnél megismerkedni a Power BI-jal és elsajátítani az adatvizualizáció alapjait, jelentkezz Vizuális adatelemzés képzésünkre!
A vetélytárs a Stanfordról – Tableau
Az adatvizualizációs eszközök toplistáján előkelő helyet foglal el az eredetileg stanfordi projektként induló, majd globális méretűvé fejlődő Tableau. A Power BI-hoz hasonlóan drag-and-drop módszerrel programozási tudás nélkül is el lehet kezdeni Tableau-ban dashboardokat készíteni, melyek vetélytársához, a Power BI-hoz hasonlóan nagyon jól integrálhatóak az üzleti környezetekbe. Ami nagy előny a Tableau-ban, hogy óriási az eszközt használók közössége. Az egyik leghíresebb közösségi vizualizációs projekt, a MakeoverMonday is Tableau alapokon indult, blogjukon számos Tableau-alapú dashboardot láthatunk, és mi is kipróbálhatjuk magunkat a hétről hétre megosztott kihívásokon. Látványos vizualizációkkal találkozhatsz a Tableau blogján, de érdemes megnézni ezt a napfogyatkozásokról készített vizualizációt és a szelfikészítést elemző dashboardot is.
A mi tapasztalataink:
Emlékszem, hogy már gyakorlott adatelemző voltam (a hátam mögött jónéhány év SAS, Clementine és RapidMiner tapasztalattal), amikor elkezdtem a Tableaut használni. Nagyon nehéz volt megtanulnom az eszköz mögött húzódó szemléletet, de amikor ezt - köszönhetően, a már akkor is nagy felhasználótábor által generált anyagoknak - megértettem, egy egészen új világ tárult fel előttem. A Tableau által kínált adatvizualizációs funkcionalitás teljeskörű: az eszköz mindenre képes, ha jól értelmezhetően akarunk információkat átadni. A Power BI megjelenését közelről követtem, és őszintén, az elején megmosolyogtam: egy nagyon gyerekcipőben járó, gyerekbetegségektől hemzsegő eszközzel szállt be a Microsoft erre a piacra. A mosolyom megmaradt, de a gondolataim mögötte megváltoztak: a Power BI fejlődési tempója olyan mértékű, hogy manapság ugyanolyan jó szívvel ajánlom ezt az eszközt is, ha valaki enterprise szinten adatvizualizációs megoldást keres.
– Nagy-Rácz István, Dmlab
A Tableau-t válaszd, ha..
- gyors drag-and-drop vizualizációt szeretnél
- üzleti környezetben szeretnél dashboardokat látni/készíteni
- nagyobb méretű adathalmazokkal dolgozol
- megéri neked egy drágább, de jobb supporttal rendelkező BI eszköz
Matplotlib
A Matplotlib a legrégebbi pythonos adatvizualizációs könyvtár, így a legelterjedtebb is. Data science környezetben gyakran pythonban dolgozunk, és ha már python, akkor számos esetben más függvénykönyvtárak is a Matplotlib funkcióit veszik alapul a különféle ábrák elkészítéséhez. Tudományos körökben a Matplotlibet a MATLAB nyílt forráskódú alternatívájaként emlegetik.
Amellett, hogy számos tudományos publikáció ábrái készülnek a Matplotlib adatvizualizációs eszközei segítségével, üzleti környezetben, feltáró adatelemzés kapcsán mi data scientistek is előszeretettel használjuk. Számos példát láthatsz Matplotlib ábrákra kódokkal együtt a Matplotlib galériában, de érdemes kedvcsinálóként megnézni ezt a projekt lefutást ábrázoló bar chartot és ezt a színezéssel előállított menő chartot is.
A mi tapasztalataink:
A mindennapos elemzői munkában általam leggyakrabban használt vizualizációs könyvtár. Elég könnyen elsajátítható és az adatelemző hű szárnysegédje legyen szó szakdolgozatírásról vagy ügyfelek számára készült adatban rejlő összefüggések prezentálásáról. Ha ezt megérted hogyan működik, akkor ez alapján már a többi pythonos vizualizációs könyvtárat könnyen tudod használni.
– Huszti Dorottya, Dmlab
“Matplotlibbel nagyjából 10 parancs megtanulásával az alapvető vizualizációs igények nagy részét le lehet fedni és szép ábrákat lehet készíteni. A Matplotlib végtelenségig testreszabható ha lemész a mélyéig, én még gifet is gyártottam vele az emberek metrózásáról Budapesten. Ilyenkor jössz rá, mennyi minden van még a pyploton kívül (matplotlib az emberek nagy részénél == matplotlib.pyplot), pedig van matplotlib.animation, matplotlib.colors, matplotlib.image, stb. Azért is érdemes alaposabban megérteni a matplotlibet, mert sok más library erre épül (seaborn, holoview), így azok testreszabhatóak konkrétan matplotlib parancsokkal.”
– Jónás Dániel, Dmlab
Ha kedvet kaptál a Matplotlibhez, szívesen megtanítunk rá, hogyan használd Vizuális adatelemzés képzésünkön!
A Matplotlibet válaszd, ha…
- gyors és egyszerű pythonos vizualizációkat szeretnél készíteni
- van pici programozói tudásod
- egyedi, testreszabott ábrákra van szükséged
- feltáró adatelemzést végzel
- statikus ábrákra van szükséged
- ha az egyedi igényeidet más könyvtárral nem tudod megoldani, de matplotlibbel minden bizonnyal igen
Bokeh
Ha nem elegendőek számodra a Matplitlib statikus ábrái, hanem interaktív, a Power BI-ban és Tableau-ban megszokott mozgatható, görgethető, szűrhető ábrákat szeretnél gyártani, de pythonból, akkor a Bokeh-t keresed. A Bokeh segítségével JavaScript-alapú vizualizációk készíthetőek python kóddal. Kisebb projekteknél, üzleti környezetben ideális eszköz, hiszen személyre szabható. A Bokeh hátránya az, hogy nehezebb megtanulni, és egy-egy dashboard felépítése is jóval időigényesebb, mint más, drag-and-drop alapú megoldásoknál.
A Bokeh-ra számos példa között böngészhetsz a függvénykönyvtár galériában, de blogposztunkban versenyeredmények alakulásáról készített Bokeh dashboardot is találsz.
A mi tapasztalataink:
Nagyon látványos interaktív diagramok készíthetők vele és sokkal tágabb felhasználási spektruma is van (geolokáció, api kommunikáció, személyre szabható interaktivitás, több diagramtípus, gráfok, hálózatok vizualizálása) viszont lényegesen bonyolultabb, mint a matplotlib, és a kész vizualizációk megosztása is bokeh szerver felhúzását igényli. Ezért főleg oktatási céllal és olyan esetben használtam, mikor nem lehetett Power BI-t használni, de mégis szerettünk volna interaktivitásra törekedni, hogy az ügyfél az adataira mindig a számára aktuálisan legfontosabb nézőpontból tekinthessen rá.
– Huszti Dorottya, Dmlab
A Bokeh esetében az egyszerű azért nem ‘Matplotlib-egyszerű’, de egy interaktív ábra létrehozása kóddal sokkal egyszerűbb ennél már nem lehet. A Bokeh hátránya, hogy ha valami nincs, nem működik, nem olyat csinál, amit szeretnél, valószínűleg el kell fogadnod. Az egyik projektnél ezzel csináltunk egy interaktív térképet, de a naptár widget nem működött. A készítő is mondta, hogy javítják, de ez csak vagy 1 évvel később valósult meg, mi pedig legördülő menüből választottunk ezért dátumot. Valójában ha valami nincs, vagy nem olyan mint szeretnéd, egy jó adag javascript tudással esetleg megfaraghatod, de valószínűleg pont azért használsz bokeht, mert ezt kerülnéd. Az a tapasztalatom, hogy a Boheh nagyobb böngészös dashboardhoz hatékonyabb plotly+dashnál.
– Jónás Dániel, Dmlab
A Bokeh-t válaszd, ha…
- interaktív vizualizációt készítenél egyszerű python kóddal
- van programozói tudásod és szereted a kihívásokat
- egyedi, személyre szabott, interaktív ábrákat szeretnél
- üzleti környezetben magad szeretnéd hostolni a Bokeh szervered
- üzleti környezetben interaktív dashboardra vágysz, de nem szeretnél előfizetni a “nagyokhoz”
Vizuális adatelemzés képzésünkön a Bokeh alapjait is elsajátíthatod.
Plotly
A Plotly esetén ugyanazon névvel találjuk meg az alkotó céget és a python függvénykönyvtárat is. A plotly könyvtár segítségével a Bokeh-hoz hasonlóan JavaScript alapú vizualizációkat készíthetünk. A Plotly cég egyik zászlóshajójával, a Dash keretrendszer segítségével pedig ezekből a plotly ábrákból web applikációkat, dashboardokat készíthetünk. Míg a plotly könyvtár nyílt forráskódú és ingyenes, addig a Dash üzleti környezetben a Tableau-hoz és a Power BI-hoz hasonlóan fizetős.
A mi tapasztalataink:
Azt tapasztalom, hogy a Plotly cég gyorsan növekszik, az elmúlt egy-két évben lényegesen gyorsabban fejlesztettek új dolgokat. Szimpatikus, hogy külön van választva az egyszerűbb és nehezebb ábrakészítés. Ha gyors, egyszerű ábrákat szeretnél, akkor ott a plotly.express, ha bonyolultabb dolgokat akarsz kézzel összerakni, ott a plotly.graph_objects. A Plotly és a Bokeh között a fő különbség, hogy milyen típusú chartokat tud kapásból legyártani, és ebben nálam erősen a plotly vezet.
– Jónás Dániel, Dmlab
Bokehhoz hasonlóan interaktív diagramokat is lehet vele készíteni, de ezt csak azért használtam, mert az egyik feladatnál olyan diagramot álmodtam meg, amelyik egyik könyvtárban sem szerepelt. Így a cél szentesítette az eszközt és a jobb érthetőség érdekében több mukával ugyan, de egy sokkal érthetőbb, átláthatóbb vizualizációt sikerült vele az ügyfél számára készíteni.
– Huszti Dorottya, Dmlab
A Plotly-t válaszd, ha…
- interaktív vizualizációt szeretnél egyszerű python kóddal
- van programozói tudásod
- egyedi, személyre szabott, interaktív ábrákat szeretnél
- jupyter notebookban gyorsan interaktív ábrát szeretnél létrehozni
- üzleti környezetben a Tableau-nál olcsóbb megoldásra vágysz
Minden más
És ez még csak a jéghegy csúcsa… Az eddig látott lista természetesen nem teljeskörű, csak egy ízelítő a rengeteg adatvizualizációs eszközből, ami rendelkezésedre áll. Mi a Dmlabban is sok más eszközt kipróbáltunk, többek között a Seaborn és a D3 eszközöket is használtuk különböző projektkeink során. Ezen könyvtárakról a tapasztalataink:
“A Seaborn a Matplotlibre épül, bonyolultabb ábrákat tesz könnyen elkészíthetővé. A legtöbbször csak a heatmap funkciója miatt használom, néha még a violinplot, swarmplot ábrák miatt.
– Jónás Dániel, Dmlab
Ha valahol láttál valami nagyon menő vizualizációt, ahol a pöttyök mentek jobbra balra, a dolgok átalakultak, pörögtek, forogtak, a bar chartok nem csak átugrottak az új értékre, hanem igényesen megnőttek vagy zsugorodtak, azt valószínűleg D3-al készítették. Itt lehet néhány szépen animált csodaábrát megnézni, amelyekhez érthetően sok-sok kód dukál, amihez jól kell érteni a JavaScript-hez és a D3 függvénykönyvtárához. Már többször nekiálltam és megtanultam az egyszerűbb dolgokat, meg pár extrát, de úgy látom, a mindennapi data scientistkedéshez ez felesleges és lassú. Inkább akkor javaslom, ha valaki tényleg kifejezetten adatvizualizációval foglalkozik, és belefér, hogy az egész napját és hetét csak a chart készítésével töltse.
– Jónás Dániel, Dmlab
Összefoglaló
A blogposztunkban górcső alá vettünk néhány adatvizualizációs eszközt, melyekkel interaktív dashboardok, egyedi vizualizációk és ábrák készíthetők. Láttunk programozói tudás nélkül, az üzleti élet szereplői számára is könnyen összerakható és kezelhető megoldásokat (Power Bi, Tableau), illetve programozói tudást igénylő adatvizualizációs eszközöket (Matplotlib, Bokeh, Plotly) is. Személyes tapasztalataink nyomán reméljük, könnyebben eligazodsz és választasz. A Dmlabban sok-sok éve gyűjtjük az adatvizualizációs tapasztalatainkat, számos projektben építünk dashboardokat, így ha hasonló projekted van, keress minket bátran. Ha pedig szívesen tanulnál tőlünk adatvizualizációt, várunk a Vizuális adatelemzés képzésünkön!