Blog momentaneamente fermo, riprenderò le pubblicazioni quando la mia vita sarà meno frenetica... :D

martedì 7 giugno 2011

Api, grafici e mappe

D'accordo, le mappe del Guardian e della BBC sull'epidemia di Escherichia Coli di cui ho parlato qui sono belle, interattive e utili, niente da dire. Alla fin fine, però, forniscono esattamente le stesse informazioni dei comunicati dell'OMS, sempre affiancati da una tabella riassuntiva (ecco come esempio l'ultimo aggiornamento), benché in modo decisamente più intuitivo e appealing. A prima vista sembrano inarrivabili per chiunque non abbia una redazione nutrita e ben formata di data journalists e programmatori web e invece le API di Google Charts possono venire in aiuto proprio a blogger e freelance squattrinati, ma creativi.

Ecco qui di seguito le mappe aggiornate a ieri dei casi di sindrome emolitico uremica (HUS) accertati e degli avvistamenti di Escherichia Coli enteroemorragico (EHEC), rispettivamente.

HUS

EHEC

Per avere questo risultato, è necessario includere prima il codice javascript delle API di Google Charts, inserendo nell'header della pagina web la seguente stringa: <script type='text/javascript' src='https://www.google.com/jsapi'></script>. Per farlo una volta per tutte in Blogger, basta incollarlo in Design - Modifica HTML subito prima del tag </head>. Poi si deve incollare la stringa <div id='map_canvas'></div> nel punto del post in cui si vuole visualizzare la mappa (in modalità HTML), facendo attenzione che l'id del div corrisponda alla stringa indicata nel codice che contiene i dati della mappa (poco sotto). Attenzione anche se si inseriscono più mappe nello stesso post, i nomi usati devono essere univoci! Infine, sempre in modalità HTML, incollate il seguente codice in fondo al post.



Fatto. Per provare il codice di generazione della mappa prima di inserirlo nel post, vi consiglio di usare il Code Playground che la stessa Google mette a disposizione. Occhio che nella modalità Scrivi dell'editor di Blogger non è visibile nessuna immagine, lo script viene eseguito solo nell'Anteprima e dopo la pubblicazione.

La mappa visualizzata nel post ha un minimo di interattività, ma è statica, perché prende i dati dal codice che abbiamo incollato a mano. Il guaio è che javascript non permette di ricavare dati al di fuori del dominio in cui è installato il codice, quindi non è nemmeno possibile fare un parsing (una sorta di lettura automatica) diretto della tabella contenuta nelle news dell'OMS. Si dovrebbe usare uno script php su un server, ma comunque sarebbe necessaria una funzione ad-hoc per ogni fonte di informazione. Questo è il guaio di non avere un sistema aperto e condiviso per la pubblicazione di dati on-line.

Add to Diigo


Nessun commento:

Posta un commento