Questo post è il primo di una mini serie il cui filo conduttore è: "Come creare mappe a partire da un foglio di calcolo".
I concetti di base
Ci sono varie strade ma, schematicamente, il procedimento è sempre lo stesso. Da excel o da un foglio di calcolo online (come google spreadsheet o editgrid) si può ottenere (nei modi che vedremo) un file kml, visualizzabile (e ulteriormente modificabile) in Google Earth.
Da questo file kml è possibile poi, molto rapidamente, ottenere una Google Maps.
Nello specifico i vari metodi e tool si differenziano per alcuni aspetti tra cui:
- la conversione foglio_di_calcolo -> kml può avvenire offline o online;
- il foglio di calcolo deve necessariamente contenere le coordinate oppure può esserne privo;
- laddove siano richieste le coordinate, queste in alcuni casi vanno reperite a parte, in altri vengono generate automaticamente dal foglio di calcolo, attraverso formule o macro;
- l’estetica del kml generato può molto scarna o molto curata e più o meno personalizzabile.
…senza coordinate
I due tool che vi presento oggi hanno in comune il pregio (non da poco!) di generare un file kml a partire da soli indirizzi, senza coordinate.
Questo rende il processo semplice e soprattutto rapidissimo perchè si bypassa del tutto la fase di geocoding, cioè la "traduzione" di ciascun indirizzo in una coppia di coordinate, latitudine e longitudine. Tale fase è ovviamente tanto più lunga e tediosa quanto più numerosi sono i nostri indirizzi, ma grazie a questi 2 tool la saltiamo a pie pari.
La differenza principale fra i 2 metodi sta invece nel fatto che la conversione da foglio di calcolo a kml avviene offline nel primo e online nel secondo.
Si tratta di:
Excel to kml converter – Addresses
Con questo sistema il geocoding è interamente automatizzato grazie ad una macro. Excel to kml converter – Addresses infatti è un normale file excel, scaricabile da qui , contenente una macro.
Nell’aprire il file, vi comparirà pertanto l’avviso standard che appare in questi casi: le macro infatti possono a volte veicolare virus, ma questa è assolutamente sicura, quindi cliccate su "attiva macro".
Il file che si apre contiene 3 fogli:
- File_details
- Data
- Instructions
In File_details vanno editate solo la righe 2 e 3, cioè il percorso del file kml di output e il suo nome.
In Data vanno inseriti gli indirizzi (fino a 5000): questo foglio è composto di sole 3 colonne, rispettivamente nome, indirizzo e descrizione di ciascun segnaposto.
Instruction non va invece editato.
In pratica, una volta inseriti tutti gli indirizzi, dovete solo scegliere un nome per il kml che si andrà a generare, e decidere dove volete salvarlo: supponiamo di chiamarlo indirizzi.kml e di volerlo salvare in una cartella su c:\ chiamata "earth". In File_details digiteremo c:\earth\indirizzi.kml nella cella C2 e "indirizzi" (senza virgolette) nella cella C3. Infine, per generare il kml, tenete premuto Alt+F8 e cliccate su "esegui".
Finito! Più lungo a dirsi che a farsi …
Nella cartella in cui l’avete salvato, troverete il vostro file kml da aprire (e magari modificare) in Google Earth. A questo punto, se desiderate anche creare una mappa visualizzabile online, ci sono 2 possibilità:
- (per i più esperti) utilizzare le Google Maps API
- (per tutti) visualizzarlo direttamente in google maps e magari salvarlo come mappa personalizzata con My Maps
In entrambi i casi, il kml che per ora risiede sul vostro c:\ va caricato su uno spazio web . Chi non ha un suo sito può utilizzare il comodissimo Google Page Creator , gratuito.
Geocode Google Spreadsheets Yahoo Pipes
Questa Yahoo Pipe fa il geoconding degli indirizzi elencati in un Google Speadsheet semplicissimo, composto cioè di sole 2 colonne: "name" e "address", come si vede nell’ esempio.
E’ sufficiente pubblicare il foglio di calcolo come feed (RSS o Atom) e poi inserire l’url del feed nella pipe. Viene a generarsi una Yahoo! Maps che può essere esportata in vari formati (cliccare su "more options"), tra cui kml.
A questo punto, a partire dal kml (questa volta già online) possiamo ottenere una Google Maps esattamente come già visto nel caso precedente.