Setup Menus in Admin Panel

School.Dataninja.it

Sviluppare visualizzazioni dati con d3js

La fine del viaggio...

Sei arrivato in fondo al corso, nelle precedenti dieci unità hai imparato a mettere a disposizione i dati grezzi alla tua applicazione, a manipolare con javascript sia i dati che gli elementi che compongono la pagina web, ad associarli tra loro e a modificare gli attributi dei secondi in base ai primi. Sei in grado anche di rendere animate le tue visualizzazioni e di arricchire l’esperienza d’uso dell’utente gestendo le sue azioni sulla pagina.

Voglio qui ribadire alcuni concetti di fondo che riguardano in generale lo sviluppo di visualizzazioni dati su web:

  • si tratta sempre di sviluppo software, quindi è necessario maturare competenze di programmazione e usare gli strumenti tipici di questa professione;
  • per molti aspetti ci sono ricette precostituite o best pratice che vale la pena imitare e fare tue, anche se all’inizio non ne vedi un’immediata utilità;
  • il vero nodo creativo dell’intero processo riguarda le scelte che fai per associare i dati agli elementi e ai loro attributi, al resto pensa il computer;
  • il messaggio e l’utente finale devono essere sempre al centro delle tue scelte, mettiti sempre nei suoi panni;
  • il principio guida less is more è sempre valido per l’arte, il design, la programmazione;

E poi rimane valida la regola aurea: se ti trovi a dover fare due volte la stessa procedura, scrivi un programma e falla eseguire al computer! D3js è una libreria così potente ed efficace proprio perché rende implicite tutte le operazioni ripetitive, grazie alle selezioni e al chaining. In base ai dati una sola istruzione può creare e modellare uno o migliaia di elementi della pagina, permettendoti di parametrizzare tutto ciò che vuoi, dalle dimensioni ai colori, dall’animazione all’interazione. D3js ti permette di concentrarti su un livello di astrazione molto alto (cosa associare a cosa e come), nascondendo le complessità di basso livello del javascript. Ma è pur sempre javascript, per cui maggiore sarà la tua comprensione del linguaggio, più efficaci saranno le tue visualizzazioni e meno tempo impiegherai a svilupparle.

Non dimenticare poi che d3js non è una libreria per costruire grafici. È a un livello più basso, quindi permette un controllo molto maggiore su ciò che si vedrà sullo schermo, al prezzo di una complessità maggiore nello sviluppo. Questo significa che se devi sviluppare grafici di base, usa una delle mille librerie focalizzate su questo specifico problema, come C3js.

Nel mondo open source, in cui una progetto come d3js è nato, cresciuto e ha raggiunto il successo, uno degli elementi più preziosi è la condivisione dell’esperienza. E la possibilità, anche legale, di riutilizzare l’esperienza maturata da altri. Se hai quindi un’idea, anche se ancora vaga, di come vuoi che sia la tua prossima visualizzazione, dai prima di tutto un’occhiata al numero infinito di esempi già a tua disposizione: la galleria ufficiale di d3js, l’archivio di prove ed esperimenti di Mike Bostock, l’incredibile lista di quasi (o più) di 3000 esempi di Cristophe Viau. Se hai qualche problema cerca nell’archivio dedicato di Stackoverflow o nel forum ufficiale e in caso chiedi liberamente. Se hai dubbi su una funzionalità consulta sempre prima la documentazione ufficiale. E buona visualizzazione dati! 😀

Letture: 292