L’analisi spaziale è il processo con cui è possibile ricavare evidenze e interpretare al meglio i dati geografici in possesso.
Attraverso l’analisi spaziale è possibile mettere in relazione fenomeni altrimenti non visibili ma anche risolvere problemi della vita quotidiana: trovare il negozio di scarpe più vicino, calcolare il percorso migliore per raggiungere una destinazione e calcolare statistiche sulle forniture idriche della propria città. Possiamo quindi affermare che gran parte delle funzionalità di un sistema informativo territoriale è legato all’analisi dei dati geografici.
Analisi spaziale integrata con Turf.js
Turf.js è una libreria javascript per l’analisi spaziale, quindi funzionante in un browser web o in un server node.js, che implementa funzionalità di analisi spaziale dei dati. Sia input e output sono in formato GeoJSON e quindi si integra perfettamente a librerie di mapping opensource come OpenLayers, Leaflet e MapBox.
Utilizzarla è molto semplice. Creare ad esempio un buffer, cioè una zona di rispetto attorno a un punto o a una linea è molto semplice: basta utilizzare la funzione turf.buffer.
Si parte ovviamente dal punto in formato GeoJSON:
var punto = { 'type': 'Feature', 'geometry': { 'type': 'Point', 'coordinates': [11.7818622, 45.055347] }, 'properties': { 'name': '3DGIS' } }
A questo punto fare il buffer è davvero un gioco da ragazzi: basta passare la geometria, la distanza e l’unità di misura.
var bufferAttorno3DGIS = turf.buffer(punto, 250, 'meters');
Facile vero?
Altre funzionalità di analisi
Turf.js non si ferma ovviamente a queste semplici funzionalità ma include:
- funzioni di aggregazione e clustering
- funzioni di misura di aree, perimetri e distanze
- funzioni di trasformazione e di interrogazione spaziale
- filtri per i dati
- funzioni di interpolazione per effettuare stime e completare dati
- funzioni di join spaziali tra le feature
- metodi di classificazione
Turf.js è opensource ed è rilasciato secondo la licenza MIT.
Potete scaricarlo da Github o passando per il sito ufficiale http://turfjs.org/