Microsoft Excel

Microsoft Excel

domenica 24 aprile 2016

Ottenere una Heatmap comandata da un foglio di calcolo

La “heatmap” o mappa di calore è una mappa dove i colori sostituiscono i dati numerici da rappresentare. 
Immaginiamo la mappa suddivisa in piccole celle e che, ad ogni cella, sia associato un valore numerico. La mappa visualizza il colore associato al dato numerico, con intensità in funzione del valore numerico associato alla cella.
La mappa di calore è utile per visualizzare “a colpo d’occhio” le differenze di distribuzione sul territorio di una grande quantità di dati numerici.
La mappa può essere comandata da un foglio di calcolo che contiene i pesi risultanti dalle analisi statistiche effettuate. 
(vedi ad esempio, https://sites.google.com/site/gestioneservizisea/home/analisi-dati-pap)

Cioè partendo da una situazione iniziale:
foglio elettronico di Google


Vogliamo ottenere:


Per ottenere una mappa termica comandata da un foglio di calcolo bisogna solo modificare il codice javascript utilizzato nel post precedente “Ottenere markup su mappa di Google partendo da un foglio di calcolo”. 

Procedere nel modo seguente:

1. Studiare il tutorial di googlemaps:
https://developers.google.com/maps/tutorials/visualizing/earthquakes#heatmaps.
Si capisce che la modifica consiste nell’introdurre, nel codice originario, il costruttore HeatmapLayer, che crea la mappa termica e la visualizza sulla mappa (ultima parte della funzione di callback).
La mappa termica è creata e visualizzata da HeatmapLayer sulla base dei dati contenuti nell’array heatmapData, che, nel ns. esempio, contiene i pesi dei rifiuti (weight) e le coordinate lat e lng del punto di produzione.

2. Modificare nel codice html originario l’attributo finale di chiamata asincrona con
 “&libraries=geometry,visualization&callback=initialize", come riportato nel tutorial:
https://developers.google.com/maps/documentation/javascript/examples/layer-heatmap 
Per il resto il codice è lo stesso. Il codice risultante è allegato all’indirizzo:
https://docs.google.com/document/d/1XEuXGtcbtb83TyyFTjdw50NXN5q431YHVte1BJcXnfY/edit?usp=sharing 

3. La parte relativa al foglio di calcolo è la stessa del post precedentemente citato, anche riguardo allo script da scrivere nell’editor del foglio di calcolo e da distribuire come applicazione web. Il codice dell’applicazione web, insieme al codice della chiave di Google, andrà come al solito inserito nel codice html.
Il foglio di calcolo riporta nelle colonne “E” e “F” le coordinate di lat e lng di un punto del quartiere dove si pensa applicato il carico. Nella colonna “D” sono riportati i pesi (in ton) di rifiuto (indifferenziato) smaltito ogni settimana. Se il rifiuto fosse stato misurato per ogni singola utenza, le singole strade sarebbero colorate un po’ come si vede nei tutorial di google.

Buon Lavoro
Daniele Paolinelli