La visualizzazione è una disciplina che può aiutarci nel nostro lavoro quando dobbiamo esporre dei dati. Lo sviluppo di visualizzazioni di dati risponde a criteri di efficienza e di sintesi, ma è anche la chiave per dare forma alla creatività. In questo articolo vengono presentate le basi concettuali della teoria della visualizzazione dei dati. A una breve introduzione segue una serie di esempi su come rappresentare e organizzare i dati.
(H. Simon, The Sciences of the Artificial) [1]
Monsieur Minard
Questo articolo sulla visualizzazione dei dati si propone nella forma di appendice come naturale prosecuzione all’introduzione su Processing. In pratica, dopo avervi consegnato gli attrezzi per lavorare, ora vi offriamo l’opportunità di usarli in maniera intelligente. Partiamo dalla definizione.
visualizzare: formare un modello mentale o un’immagine mentale di qualcosa.
E proseguiamo con un esempio. Immaginate di essere alle dipendenze di Napoleone. Il vostro nome è Monsieur Minard, il vostro ruolo è quello di cartografo e come tale create delle visualizzazioni topografiche. Quest’oggi si è conclusa la campagna in Russia e voi sapete che la tremenda disfatta ottenuta siglerà la fine del Regno Napoleonico. Voi capite che se Napoleone vi chiede d’illustrare l’esito della campagna non siete in una posizione di favore. Forse questa sarà anche l’ultima cosa che farete per Napoleone: vi proponete di farla meravigliosamente bene ed è ciò che accade.
Figura 1 – Mappa delle perdite umane durante la campagna di Russia. Autore M. Minard.
Disegnate con chiarezza una sorta di percorso immaginario dove il rosa indica l’avanzata, il nero la ritirata. Lo spessore indica invece la grandezza dell’esercito ed è più eloquente di una serie di numeri. Napoleone studia il disegno per capire che l’attraversamento del fiume Berezina è stato fatale. Visualizzare i dati significa fornire una rappresentazione degli stessi in modo da comunicare all’utente un’intuizione di cosa i dati significano. Nell’esempio Napoleone, uomo già intelligente di natura, realizza immediatamente che l’attraversamento del fiume nel rigido inverno è stato fatale per le sue truppe. Se da un lato abbiamo Napoleone che studia una visualizzazione di dati dall’altra c’è Monsieur Minard che realizza con i mezzi dell’epoca un disegno atto a rappresentare una serie complessa di dati nella speranza di far nascere l’intuizione in Napoleone.
Questa forma di comunicazione è completamente basata sulla visualizzazione dei dati che altro non è che un oggetto grafico composto da diversi elementi:
- uno spazio grafico;
- un insieme di oggetti;
- un insieme di relazioni.
Creare una visualizzazione di dati significa collocare in uno spazio una serie di oggetti grafici. Lo spazio si relaziona in questo modo agli oggetti che a loro volta si relazionano fra se‘. Adesso vedremo come adoperare gli elementi che caratterizzano la visualizzazione.
I dati
Come nella costruzione di una mappa, per una corretta visualizzazione è necessario ordinare i tipi di dati che abbiamo a disposizione e scegliere la prospettiva con cui mostrarli. Bisogna infatti disporre i nostri dati come oggetti in uno spazio per creare un ordine di lettura e renderli espressivi del contenuto che rappresentano.
Di fronte alla nostra lista di numeri e nomi la prima cosa che ci troviamo da fare è scegliere o creare l’oggetto grafico che meglio li rappresenta. Non è detto che il segno grafico che assomiglia di più all’oggetto sia la scelta migliore (ad esempio se ho dei dati riguardanti dei libri potrei scegliere un rettangolo): la scelta avviene sempre all’interno di una visione più complessiva che comprende i tipi di dati e le relazioni che ho intenzione di costruire. Dato che è importante che i singoli dati siano sempre leggibili e le relazioni chiare, la scelta cadrà sull’oggetto grafico che nella sua semplicità o complessità rispetta questi parametri.
Nel caso di grandi moli di dati è inoltre opportuno introdurre la possibilità di avere un dettaglio. Una visualizzazione è un ausilio alla lettura dei dati: mai dimenticare che gli stessi devono sempre essere leggibili! Anche se la forma grafica richiama con evidenza il contenuto dei dati, è importante inserire comunque una legenda.
Figura 2 – Esempio di rappresentazione di un dato libro.
Le relazioni tra i dati e lo spazio: ordinare dati e valori
Una volta scelta la forma del nostro oggetto grafico, dovremo esprimere i valori ad esso collegati. Gli daremo un posizionamento nello spazio. Possiamo scegliere tra spazio bidimensionale o tridimensionale. Maggiore è la mole dei dati da visualizzare, più grande la necessità di allocarli con maggiore efficienza nello spazio disponibile. Per ora prendiamo in considerazione lo spazio bidimensionale, facendo riferimento alle coordinate cartesiane. Queste possono essere utilizzate anche con dati che fanno riferimento a tre valori diversi (trivariate data [2]).
Figura 3 – Esempio con gli oggetti libro in relazione agli anni in cui sono stati pubblicati.
Le regole applicate fino ad ora a un solo tipo di dato possono moltiplicarsi per le varie tipologie di dati che andremo a visualizzare. Più tipi di dati possono infatti fare riferimento a valori comuni, come nel caso delle comparazioni. È possibile tenere separate le visualizzazioni per esaltare il paragone tra i dati oppure inglobare tutto insieme: ovviamente dovremo distinguere graficamente i dati tra di essi.
Figura 4 – Esempio con gli oggetti libro in relazione agli anni in cui sono stati pubblicati per due autori diversi.
Relazioni tra dati: organizzare i dati
A questo punto possiamo inserire le relazioni tra le diverse tipologie di dati. A questo fine dapprima differenzieremo i dati tra di loro attraverso forma, colore, dimensione, luminosità e quant’altro li possa far riconoscere l’uno dall’altro. Una volta fatto ciò organizzeremo i nostri oggetti attraverso raggruppamenti, separazioni, collegamenti e sovrapposizioni di piani.
Una tipica modalità di organizzazione può essere ad esempio l’albero: esso rappresenta tipi di dati collegandoli tra di loro e presentandoli con un ordinamento gerarchico. Esso altro non è che una forma di collegamento tra dati, espressiva di un contenuto, la gerarchia. Altre forme sono le linee, i diagrammi di Venn e le loro evoluzioni, le mappe di raggruppamenti e gli hyperbolic browser [3]. Ognuna di queste metodologie può assumere una forma che racchiudendo le relazioni, le arricchisce di ulteriori significati, come riportato ad esempio sul sito Visual Complexity: archi, globi, ellissi, etc. Non sono diverse metodologie, ma complicazioni e arricchimenti di quelle elencate in questo articolo. A questo punto avremo costruito una visualizzazione completa per i dati che vogliamo rappresentare.
Figura 5 – Esempio di una visualizzazione con diverse tipologie di dati. Le linee orizzontali indicano le vite degli autori, mentre i dati in comune tra gli autori sono libri, seminari, paper e concetti in relazione tra di loro. Le linee tratteggiate verticali, indicano il periodo storico usato come base su cui dislocare le opere realizzate.
La visualizzazione si può ancora arricchire portando l’attenzione su come l’utente andrà ad interagire con i dati in essa contenuti. A questa fase appartengono le metodologie di ordinamento dei dati nel tempo: l’utente agirà non solo in uno spazio, modificando i rapporti tra i dati, facendo uno zoom sui dati o una panoramica complessiva, ma anche su una linea temporale formata dal susseguirsi delle sue interazioni con i dati.
A questo punto diventerebbe importante introdurre alcuni concetti di psicologia della percezione che ci porterebbero però ben al di là di una introduzione sul teoria della visualizzazione dei dati.
Conclusioni
Abbiamo qui concluso la trattazione su come usare Java per realizzare visulizzazioni di dati: dapprima analizzando Processing, una libreria che permette di concentrarsi sui concetti da visualizzare e su come renderli facilmente fruibili piuttosto che sul lato tecnico.
Infine abbiamo visto i concetti basi e i processi coi quali realizzare una visualizzazione. Per approfondire quest’ultimo tema e per trarre valide ispirazioni vi consigliamo di sviluppare l’argomento con alcuni dei libri indicati nei riferimenti, in particolare [A], [B], [C], [D].
Riferimenti
[1] H. Simon, The Sciences of the Artificial (3rd ed.), Cambridge, MIT Press, 1996.
[2][3] R. Spence, Information visualization (2nd ed), Harlow, Addison-Wesley, 2007
[A] G. Mangani, Cartografia morale, Franco Cosimo Panini Editore, Modena 2006
[B] M. Quaggiotto, Mappe per gli spazi del sapere, Linea Grafica 366, Milano 11/2006
[C] S.K.Card – J.D. Mackinlay – B. Sheiderman, Readings in information visualisation, Morgan Kaufmann Publishers, San Francisco 1999