Realizzare unioni spaziali (Spatial Joins)

L’unione spaziale è un classico problema in ambito GIS - si tratta di trasferire attributi da un layer ad un altro basandosi sulle loro reciproche relazioni spaziali. In QGIS questa funzionalità può essere avviata attraverso lo strumento Unisci attributi per posizione .

Descrizione dell’esercizio

Useremo due layer - Uno shapefile dei confini amministrativi dei quartieri di New York e un altro shapefile che contiene gli indirizzi delle case di cura a New York. Useremo la tecnica di unione spaziale (join) per accertare la capacità totale delle case di cura in ciascuno dei quartieri di New York.

Altri aspetti che avremo modo di apprendere nel corso dell’esercizio

  • Eliminare colonne dalla tabella degli attributi di un layer.

Ottenere i dati necessari

NYC Open Data Portal è una fonte straordinaria di open data che riguardano la città di New York.

  1. Scaricate il file .zip dei confini amministrativi dei quartieri di New York Borough Boundaries usando l’opzione Export sul portale.

../_images/1102.png
  1. Scaricare il file .zip Nursing Homes (case di cura) usando l’opzione export del portale.

../_images/247.png

For convenience, you may directly download a copy of the datasets from the links below:

nybb_12c.zip

OEM_NursingHomes_001.zip

Procedimento

  1. Andate su Layer ‣ Aggiungi Vettore. Cercate il file .zip scaricato ``nybb_12c.zip` e selezionatre Open.

../_images/328.png
  1. Selezionate il layer nybb.shp e fate click su OK.

../_images/420.png
  1. Ripetete i passi 3 e 4 per l’altro file OEM_NursingHomes_001.zip e caricate il layer OEM_NursingHomes_001.shp. Quando entrambi i file sono stati caricati fate click con il tasto destro del mouse sul layer OEM_NursingHomes_001 e selezionate Apri la tabella degli Attributi.

../_images/521.png
  1. Esaminiamo gli attributi che sono disponibili per ciascuna geometria. Stante che il nostro obiettivo è quello di calcolare il numero totale di posti nelle case di cura per ciascun quartiere, si potrebbe utilizzare l’attributo Capacity, che indica i posti letto disponibili per ciascuna casa di cura, per unirlo al layer dei confini amministrativi dei quartieri di New York.

../_images/620.png
  1. Andate dunque sul menu Vettore ‣ Strumenti di gestione dati ‣ Unisci attributi per posizione.

../_images/719.png
  1. The Target vector layer is the one we want to add the attributes to. In our case, this will be the boroughs boundary nybb layer. The Join vector layer will be the nursing homes OEM_NursingHomes_001 layer. As we want to sum the capacity of nursing homes, select Take summary of intersecting features and choose Sum. Name the output file as nyc_borough_join.shp. In the Output table select Keep all records`.
../_images/818.png
  1. Una volta terminato il processo, selezionate Si quando vi verrà chiesto se intendete aggiungere il layer alla TOC. Il nuovo nyc_borough_join dovrebbe avere le geometrie prese dal layer nybb unite spazialmente con gli attributi provenienti dal layer OEM_NursingHomes_001. Click con il tasto destro sul nuovo layer e selezionate Apri Tabella degli Attributi .

../_images/916.png
  1. Vedrete una colonna SUMCapacit**nella tabella degli attributi. Questa è la sommatoria dell’attributo **Capacity per le case di cura che cadono in ciascuna delle geometrie dei limiti amministrativi dei quartieri di New York.

../_images/1017.png
  1. E questa è la risposta che stavamo cercando. Ci sono tuttavia alcune colonne di cui non abbiamo bisogno. Puliamo il nostro risultato. Facciamo click sul pulsante Modalità di Modifica e quindi sul pulsante Elimina colonna.

../_images/1120.png
  1. Premete Control-A per selezionare tutte le colonne nella casella di dialogo Rimuovi Attributi. Poi tenete premuto il tasto Control e de-selezionate le colonne che volete conservare. Click su OK.

../_images/1219.png
  1. Nella tavola degli attributi fate di nuovo click sul pulsante Modalità di modifica per salvare i cambiamenti.

../_images/1316.png
  1. Tornate nella finestra principale e usate lo strumento Informazione elementi per verificare che il file di output ha gli attributi desiderati per ogni geometria di quartiere.

../_images/1415.png
comments powered by Disqus

This work is licensed under a Creative Commons Attribution 4.0 International License