Description
Il termine Data Visualizaiton (lett. visualizzazione dei dati), altrimenti noto come data viz, si riferisce a qualsiasi rappresentazione visuale di dati, generata in modo automatico (da un algoritmo) [Illinsky & Steele, 2011]. In particolare, data viz ha il pregio di essere facilmente replicabile (anche con dati differenti), e pone maggiore enfasi alla visualizzazione di (molti) dati, piuttosto che curare preminentemente l'aspetto estetico.
Le tecniche di data viz sono ulteriormente distinte in due categorie, vale a dire visualizzazioni statiche e interattive. Le prime si basano su rappresentazioni di dati "pre-definite", spesso replicate in differenti "formati" e angolazioni per fornire diversi punti di vista (e di analisi) delle medesime informazioni [Murray, 2013].
Al contrario, una visualizzazione interattiva permette all'utente di personalizzazione il modo in cui si intende mostrare e analizzare i dati.
Matplotlib è una libreria Python molto nota e molto potente, che rappresenta oramai lo strumento di riferimento per data viz nella comunità.
Matplolib offre un'ampia varietà di strumenti per il plotting 2D e 3D, grafici, mappe (matplotlib.basemap) che trovano ampio utilizzo (ma non sono limitate a) l'analisi dei dati scientifici. Tutti i grafici generati con matplotlib possono essere ulteriormente personalizzati (ad esempio, "possono essere annotati con formule LateX", "è possibile modificare font e colori", "aggiungere note", ecc.) in modo che possano essere perfettamente adatti a specifici utilizzi.
Ultimo, ma non ultimo per importanza, le ultime versioni di matplotlib hanno aggiuto il supporto alle animazioni e grafici animati (matplotlib.animations).
La maggior parte dei grafici disponibili in Matplotlib appartengono alla categoria degli strumenti di data viz statici. Tuttavia, il nuovo project MLPD3 mira ad integrare Matplotlib con D3js, popolare libreria Javascript per la generazione di pagine web data-driven.
Questo talk ha l'intento di mostrare una serie di ricette per data viz, facendo uso di Matplotlib. In particolare, i contenuti (e le diverse ricette) saranno presentate con taglio estremamente pratico e orientato al problema, al fine di comprendere come e quando utilizzare i differenti grafici di Matplotlib.
A tale scopo, differenti esempi di codice saranno descritti e discussi durante la presentazione. Esempi e ricette con mpld3 e matplotlib.animations per data viz interattivo costituiranno l'ultima parte della presentazione.
Questo talk assume una buona conoscenza del linguaggio Python. Conoscenza di numpy e scipy è preferibile, ma non propedeutica.