Molto spesso si ha a che fare con dati georeferenziati ed è pertanto necessario inserire nel documento QlikView una mappa geografica.

Sono possibili due differenti alternative: inserire una mappa di Google Maps o utilizzare direttamente l’estensione fornita da QlikView con la versione 11.
Uno svantaggio nell’utilizzo di estensioni di terze parti è quello che con i successivi rilasci di QlikView non è garantita la compatibilità delle stesse ma essendo quest’ultima un’estensione integrata negli esempi di QlikView si presume che venga aggiornata in futuro.

Prima di trattare le caratteristiche dell’estensione di QlikView è opportuno mettere in luce le principali differenze tra le due alternative.

Le mappe di Google Maps sono statiche, ovvero non è possibile trascinare la mappa usando il mouse (risultano essere lo sfondo di un grafico di dispersione).
Sulla community è possibile trovare diversi documenti che spiegano come utilizzarle per rappresentare punti sulla mappa in base alle coordinate geografiche.
Con qualche artificio è possibile implementare anche i livelli di zoom.

L’estensione QlikView Mapping Example permette di inserire una mappa navigabile sfruttando il servizio di mappatura MapQuest.
Utilizzando QlikView Desktop, le estensioni sono visibili soltanto in modalità WebView mentre con Google Maps la visualizzazione web non è necessaria.
Nei casi reali l’applicazione creata sarà spostata sul server e i vari client vi accederanno utilizzando l’IE plugin o la modalità Full Browser. Google Maps vi permette di utilizzare entrambe le modalità di visualizzazione, mentre l’estensione QlikView richiede la visualizzazione web/html e pertanto non funziona con il plugin per Internet Explorer.

In questo articolo viene mostrato come è possibile visualizzare le regioni italiane delimitando i confini grazie a un file KML.
Il KML è un linguaggio basato sullo standard XML e permette di gestire i dati geospaziati in tre dimensioni.

Scarica il file KML utilizzato.

Altri dati sulle regioni sono stati scaricati dall’indirizzo http://www.tuttitalia.it/regioni/popolazione/

Una volta installata l’estensione (basta fare doppio click sul file .qar) siamo pronti per creare una mappa interattiva.
Il primo passo è quello di abilitare la visualizzazione Web (solo fintanto che lavoriamo con QlikView Desktop).
Creiamo un nuovo oggetto di lavoro di tipo “Oggetto Estensione”.
Questa funzione permette di inserire tutti gli oggetti estensione che abbiamo installato, in particolare “QlikView Mapping Example” che trasciniamo sul documento.

Il campo chiave delle proprietà dell’oggetto è “Coordinates” in cui va inserito il nome del campo che contiene le coordinate dei punti da disegnare.
Si possono tracciare punti, linee oppure poligoni.
Per tracciare un punto è sufficiente scrivere in coordinate decimali la longitudine e la latitudine, separate da una virgola, utilizzando il punto come separatore decimale (è fondamentale non inserire lo spazio tra le due coordinate).
Per tracciare una linea basta inserire uno dopo l’altro una serie di punti. Ciascun punto viene separato da uno spazio.
Se infine il primo punto e l’ultimo punto coincidono viene rappresentato sulla mappa il poligono pieno che ha i punti indicati come vertici.

Abbiamo quindi letto dal file KML i confini delle regioni e, con un piccolo lavoro di ETL, le abbiamo scritte nel formato richiesto, in modo tale che il primo punto e l’ultimo punto coincidessero.
Si noti che alcune regioni nel file KML sono separate su diversi record, ciascuno riempie un piccolo poligono che affiancato agli altri compone la regione stessa.

È possibile specificare, sotto “ColorExpression”, il colore da assegnare alle varie regioni (ad esempio in base alla superficie) e personalizzare in “Measurement” la tooltip che compare quando si porta il mouse sopra ciascuna regione.
Il parametro “Max Line Width and Point Size” è stato impostato a 2, in modo tale che il bordo di ciascuna regione non sia troppo spesso.
Infine è possibile personalizzare anche l’etichetta del grafico e i colori dell’intestazione.

A titolo di esempio, le figure seguenti riportano la densità di popolazione per regione.

Mappa%20Italia
Mappa%20Lombardia