6.1. Lesson: Riproiezione e trasformazione dei dati

Parliamo nuovamente dei Sistemi di Riferimento delle Coordinate (SR). L’abbiamo visto brevemente in precedenza, ma non abbiamo discusso di cosa significhi nella pratica.

Obiettivo della lezione: Riproiettare e trasformare dataset vettoriali.

6.1.1. basic Follow Along: Proiezioni

Il SR che tutti i dati, come la mappa stessa, ora utilizzano è chiamato WGS84. Questo è un Sistema di Coordinate Geografiche (GCS) molto comune per la rappresentazione di dati. Ma, come vedremo, c’è un problema.

  1. Salva la mappa attuale.

  2. Poi apri la mappa del mondo che trovi in exercise_data/world/world.qgs

  3. Ingrandisci il Sud Africa utilizzando lo strumento Ingrandisci

  4. Prova ad impostare una scala nel campo Scala, che è nella Barra di Stato in fondo allo schermo. Mentre sei sul Sud Africa, imposta il valore a 1:5 000 000 (1 a cinque milioni).

  5. Muovi la mappa osservando il campo Scala

Noti che la scala cambia? Questo è perché ti stai spostando dal punto in cui eri quando hai ingrandito a 1:5 000 000, che era al centro dello schermo. Tutto attorno a quel punto, la scala è diversa.

Per comprendere il perché, pensa al globo della Terra. Ha delle linee che scorrono su di esso da Nord verso Sud. Queste linee di longitudine sono distanziate all’equatore, ma si incontrano ai poli.

In un GCS, stai lavorando su questa sfera, ma il tuo schermo è piatto. Quando si tenta di rappresentare una sfera su una superficie piatta, avvengono delle distorsioni, come succederebbe se tagli una palla da tennis e tenti di appiattirla. In una mappa questo significa che le linee di longitudine stanno equamente distanziate una dall’altra, anche ai poli (quando si dovrebbero incontrare). Questo significa che, nella tua mappa, come ti allontani dall’equatore, la scala degli oggetti che vedi diventa sempre più grande. Per noi significa, in pratica, che non c’è una scala costante sulla mappa!

Per risolvere il problema, usiamo invece un Sistema di Coordinate di Progetto (PCS). Un PCS «proietta» o converte i dati in modo da tener conto della modifica della scala e correggerla. Perciò, per tenere la scala costante, dobbiamo riproiettare i nostri dati usando un PCS.

6.1.2. basic Follow Along: Riproiezione «al volo»

Per per definizione, QGIS riproietta i dati «al volo». Questo significa che anche se i tuoi dati sono in un altro SR, QGIS può riproiettarli come se fossero in un SR di tua scelta.

Puoi cambiare il SR del tuo progetto cliccando sul pulsante projectionEnabled SR attuale nell’angolo in basso a destra di QGIS.

  1. Nella finestra di dialogo che appare, inserisci la parola global nel campo Filtro. Alcuni SR dovrebbero apparire nel campo in basso Sistema di Riferimento delle Coordinate Predefinito.

  2. Seleziona la voce WGS 84 / NSIDC EASE-Grid 2.0 Global | EPSG:6933 cliccando su di essa, e poi cliccando OK.

    Nota come la forma del Sud Africa cambia. Tutte le proiezioni lavorano cambiando la forma apparente degli oggetti sulla terra.

  3. Ingrandisci alla scala 1:5 000 000 di nuovo, come prima.

  4. Sposta attorno la mappa.

    Nota che la scala rimane la stessa!

La riproiezione «al volo» viene utilizzata anche per combinare dataset in differenti SR.

  1. Aggiungi un altro layer vettoriale alla mappa che ha soli i dati per il Sud Africa. Lo troverai come exercise_data/world/RSA.shp.

  2. Caricalo. Un modo veloce per vedere il suo SR è spostare il mouse sopra il layer nella legenda. È EPSG:3410.

    Che cosa noti?

    Il layer è visibile anche se ha un SR diverso da quello di continents.

6.1.3. moderate Follow Along: Salvare un data set con un SR diverso

A volte è necessario salvare un dataset esistente con un SR diverso. Come vedremo nella prossima lezione, se hai bisogno di calcolare distanze sul layer, è meglio avere il layer in un sistema di coordinate proiettate.

Fai attenzione che la riproiezione «al volo» si riferisce al progetto non al singolo layer. Questo significa che il layer può avere un SR diverso dal progetto anche se lo vedi nella posizione corretta.

Puoi facilmente esportare il layer con un diverso SR.

  1. Aggiungi il dataset buildings dal file training_data.gpkg

  2. Clicca col tasto destro sul layer buildings nel pannello Layers

  3. Seleziona Esporta ► Salva Elementi Come… nel menu che appare. Ti apparirà il dialogo Salva Vettore Come….

  4. Clicca sul pulsante Sfoglia vicino al campo Nome file

  5. Sfoglia in exercise_data/ e inserisci buildings_reprojected.shp come nome del nuovo layer

  6. Cambia il valore di SR. Nel menu a scomparsa saranno visualizzati solo i SR utilizzati di recente. Clicca sul pulsante setProjection Seleziona SR vicino al menu a scomparsa.

  7. Apparirà la finestra di dialogo Coordinate Reference System Selector. Nel campo Filtro, cerca 34S.

  8. Seleziona dalla lista WGS 84 / UTM zone 34S | EPSG:32734

    ../../../_images/CRSselector.png
  9. Lascia le altre opzione come sono. Il dialogo Save Vector Layer as… appare come questo:

    ../../../_images/save_vector_dialog.png
  10. Clicca su OK

Ora puoi confrontare la vecchia e nuova proiezione del layer e vedere che sono in due diversi SR ma ancora si sovrappongono.

6.1.4. hard Follow Along: Creare la tua proiezione personalizzata

Ci sono molte altre proiezioni oltre a quelle incluse in QGIS. Puoi anche creare le tue proiezioni.

  1. Inizia una nuova mappa.

  2. Carica il dataset world/oceans.shp

  3. Vai in Impostazioni ► Proiezioni Personalizzate… e vedrai questa finestra di dialogo.

    ../../../_images/custom_crs.png
  4. Clicca sul pulsante symbologyAdd Aggiungi nuovo SR per creare una nuova proiezione

  5. Un’interessante proiezione da utilizzare è chiamata Van der Grinten I. Inserisci il suo nome nel campo Nome.

    Questa proiezione rappresenta la terra in un campo circolare invece che rettangolare, come fanno la maggior parte delle proiezioni.

  6. In Formato, seleziona WKT (Raccomandato).

  7. Aggiungi la riga seguente nel campo Parameters:

    PROJCRS["unknown",
        BASEGEOGCRS["unknown",
            DATUM["unknown",
                ELLIPSOID["unknown",6371000,0,
                    LENGTHUNIT["metre",1,
                        ID["EPSG",9001]]]],
            PRIMEM["Greenwich",0,
                ANGLEUNIT["degree",0.0174532925199433],
                ID["EPSG",8901]]],
        CONVERSION["unknown",
            METHOD["Van Der Grinten"],
            PARAMETER["Longitude of natural origin",0,
                ANGLEUNIT["degree",0.0174532925199433],
                ID["EPSG",8802]],
            PARAMETER["False easting",0,
                LENGTHUNIT["metre",1],
                ID["EPSG",8806]],
            PARAMETER["False northing",0,
                LENGTHUNIT["metre",1],
                ID["EPSG",8807]]],
        CS[Cartesian,2],
            AXIS["(E)",east,
                ORDER[1],
                LENGTHUNIT["metre",1,
                    ID["EPSG",9001]]],
            AXIS["(N)",north,
                ORDER[2],
                LENGTHUNIT["metre",1,
                    ID["EPSG",9001]]]]
    
    ../../../_images/new_crs_parameters.png
  8. Clicca su OK

  9. Fai clic sul pulsante projectionEnabled SR attuale a destra della barra di stato per cambiare il SR del progetto

  10. Scegli la proiezione appena definita (cerca il suo nome nel campo Filtra)

  11. Applicando questa proiezione, la mappa sarà riproiettata così:

    ../../../_images/van_grinten_projection.png

6.1.5. In Conclusion

Proiezioni diverse sono utili per scopi diversi. Scegliendo la proiezione corretta, puoi assicurare che gli elementi sulla mappa saranno rappresentati accuratamente.

6.1.6. Further Reading

I materiali per la sezione Avanzata in questa lezione sono stati presi da questo articolo.

Leggi ulteriori informazioni su Coordinate Reference Systems.

6.1.7. What’s Next?

Nella prossima lezione imparerai come analizzare i vettori dati usando diversi strumenti di QGIS per l’analisi dei vettori.