Da tabella HTML a grafici realtime interattivi. Il caso qualità dell’Aria di ARPA Puglia

Sarò abbasta sintetico.

Vi faccio vedere subito un caso di riuso e poi vi indico in pochi passaggi come raggiungerlo:

 

Spesso si trovano tabelle su siti web di vostro interesse. Ma sono inserite dentro un sito web e se voleste avere un data base interoperabile, dovreste scrivere i valori a mano oppure usare tecniche di scraping . Google Sheet possiede alcune funzioni che fanno benissimo questo lavoro. Vi indico IMPORTHTML nel caso abbiate elenchi e tabelle (basta passare il link della pagina da “scapare”) oppure IMPORTXML con la gestione tramite la tecnica dell’XPATH usata per esempio in tanti casi di AlboPop etc.

Oggi vi parlo di un caso semplice semplice che potete replicare in classe (per esempio).

Sul sito http://arpa.puglia.it/ potete trovare una sezione per la qualità dell’aria. Se ci andate troverete una bella (ironico) mappa Google, un elenco in pseudotabella e un link per esportare in formato CSV tali dati.

Il link è QUESTO

Che farne? Apriamo in foglio di Google e nella prima cella scriviamo:

=IMPORTDATA(“LINK”) dove LINK  è il link di sopra

Verrà caricato il contenuto del CSV in maniera automatica e interoperabile. Infatti da questo momento potete fare “query” cioè interrogazioni a questi dati.

Ma dobbiamo prima pulire la tabella cercandola di disporre per colonna in maniera corretta. Questo purtroppo è il risultato del fatto che il CSV in questione ha i valori separati di semi-comma (cioè punto e virgola ; ) e non da COMMA (cioè virgola) da cui il nome Comma Separated Values (CSV appunto).

Se notate per esempio nella cella A7 troverete:

NomeCentralina ;Comune ;Inquinante ;Valore ;Superamenti PM10*

Nella cella C7 scrivete :  =split(A7;“;”

Et voilà avrete da quella colonna in poi lo splittamento . Ora trascinate la formula fino in basso e avrete tutti i valori divisi per colonna correttamente.

Supponiamo vi servano i valori del Comune di Lecce, campo presente dalla cella  D339 a scendere.

Cliccate nella cella H339 e scrivete : =CONCATENATE(C339;“-“;E339) trascinando fino alla fine delle righe del Comune.

Ora create un nuovo foglio di lavoro (il tasto + in basso alla barra).  Si chiamerà Foglio2.

Supponiamo vogliamo i valori del PM10 delle centraline del Comune di Lecce (ma vale per qualsiasi Comune ovviamente)

Nella prima cella scrivete:

=query(Foglio1!C319:H;“select H,F where D = ‘Lecce’ AND F is not null AND E contains ‘PM10′”)

cioè vengono presi solo i valori non nulli nella colonna F (ci sono centraline censite ma non attive), dove la colonna E contiene la parola PM10 e dove la colonna D (il Comune) è Lecce, relativamente al Foglio1.

Ora potete usare i tanti tools gratuiti a disposizione per creare infografiche.

Io ho usato all’inizio del post il sito web Infogr.am .

Ho cliccato nuovo grafico a barre e ho collegato tramite il tasto Google il mio Google Sheet scegliendo SOLO il Foglio2 (attenzione non All Sheets. Nel mio caso di chiama Lecce come da figura in basso).

Poi ho ripetuto nel mio googlesheet la stessa cosa di prima per un Foglio3 ma relativamente al Comune di Taranto.

Buono studio

Lic CC-BY-SA (fate quello che volete ma citate questo post con link e permettete agli altri di fare altrettanto con quello che fare voi)

 

Potrebbero interessarti anche...

Rispondi