QGIS: atlas avanzato

Quesito

Partendo dalla shape regionale Istat, generare un atlante contenente 12 pagine, ognuna delle quali contenga UNICAMENTE le regioni che iniziano con la stessa lettera.
Quindi: la prima pagina conterrà soltanto l’Abruzzo, mentre l’ultima soltanto Veneto e Valle d’Aosta.

Quesito postomi da un esperto GIS/CAD

Lo shapefile regionale Istat è caratterizzato da #20 feature ( le 20 regioni d’Italia), il quesito chiede un atlas di #12 pagine.

Per generare un atlas di #12 pagine occorre creare un ‘vettore di copertura’ che abbia #12 feature (righe); questo è il punto di partenza per risolvere il problema.

Come ottenere uno shapefile con #12 feature che soddisfa il quesito e che possa essere utilizzato come ‘vettore di copertura’:

  1. carichiamo lo strato regionale in QGIS (reg2011_g);
  2. avviamo il ‘calcolatore di campi’ dopo aver selezionato il layer ‘reg2011_g’:
  3. creiamo un nuovo campo testuale ‘ini’ (che sta per iniziali);
  4. digitiamo la seguente formula:  substr( “nome_reg” ,1,1);
  5. cosi facendo otteniamo un nuovo campo in cui è presente l’iniziale del nome di ogni regione;
  6. atlas5
    screenshot calcolatore di campi
  7. atlas6
    screenshot tabella attributi ‘reg2011_g’ con il nuovo campo ‘ini’
  1. da Vettore => Strumenti di Geoprocessing => Dissolvenza…,
    1. vettore di ingresso: ‘reg2011_g’;
    2. campo di dissolvenza: ‘ini’;
    3. shapefile di uscita: ‘vettore_di_copertura’;
    4. di questo shapefile ci serviremo solo dell’ultimo campo ‘ini’;
  2. finalmente abbiamo il vettore di copertura.

Come visualizzare, per ogni pagina dell’atlas, UNICAMENTE le regioni con la stessa lettera:

  1. per risolvere questo aspetto ci sono almeno due vie possibili, qui seguiremo la via più ‘elegante’ (a mio avviso), cioè quella di sfruttare una delle ultime innovazioni relative all’atlas  QGIS 2.12 (cioè la visualizzazione di layer in funzione di un attributo del vettore di copertura);
  2. innanzitutto occorre creare #12 layer (li metteremo dentro un gruppo, chiamato Atlas, nella TOC) utilizzando i filtri:
    1. per automatizzare il processo di generazione di #12 layer attraverso i filtri, basta utilizzare il plugin ‘Split Layer by Field’;
    2. questo plugin richiede un layer (reg2011_g ) ed un field (ini);
    3. il risultato atteso è: all’interno del gruppo ‘Atlas’ avremo #12 layer filtrati secondo le iniziali dei nomi delle regioni, iniziali contenute nel campo ‘ini’;
    4. atlas7
      screenshot TOC
  3. abbiamo tutto il necessario per creare l’atlante  (vedi articolo QGIS: COME CREARE UN ATLAS);
    1. seguire tutti i passi spiegati nell’articolo e in più:
    2. nella TOC spegnere tutti i layer;
    3. nel pannello ‘proprietà oggetto’ della mappa 0 (nel compositore di stampe) apportare la seguente modifica (che è il fulcro di tutto il quesito e che rappresenta la novità della QGIS 2.12):
  4. atlas8
    screenshot modifica proprietà mappa 0
  5. stringa da digitare: ‘reg2011_g_’ ||  “ini” || ‘|’ || ‘reg2011_g’;
    1. la prima parte della stringa (‘reg2011_g_’ ||  “ini”) sarebbe sufficiente per risolvere il quesito, la seconda parte visualizza sullo sfondo l’Italia;
    2. fine.
  6. Link al video dimostrativo – Fine!

2 pensieri su “QGIS: atlas avanzato

  1. Eccezzionale come sempre..!
    Ho alcuno commenti da fare:
    1) non riuscivo a capire a cosa servisse o funzionasse il “‘reg2011_g_’ || “ini” || ‘|’ || ‘reg2011_g’;”. Ho rivisto attentamne il video e l’immagine delle opzioni della mappa, e mi sono accorto che il GUI del mio QGIS é diverso dal mio, sia nell 3.4 che nella 2.18. Non ho l’opzione “disegna elementi sulla mappa” , non capisco se sia solo un errore di traduzione (nella versione spagnola dice “seguire tema della mappa” (QGIS 3) – “seguire definizione prestabilita di visibilitá” (QGIS 2.18).
    2) non riesco a eliminare quella fastidioso dettaglio per cui aa lato delle categorie della legenda, si visualizza il numero di geometrie totali. Davvero non si puó eliminare?

    Un saluto e grazie mille per questa playlist di ATLAS, é sempre il mio punto di riferimento!
    Luca

    Piace a 1 persona

    1. Ciao Luca,
      1) la traduzione dall’inglese comporta anche delle interpretazioni quindi ogni nazione traduce come meglio crede;
      2) per eliminare il numero totale elementi dlla toc tasto destro mouse e tolgi lo spunto su mostra totali; nel compositore: nella leggenda trovi un tasto sommatoria.

      ciao

      Piace a 1 persona

Lascia un commento

Questo sito utilizza Akismet per ridurre lo spam. Scopri come vengono elaborati i dati derivati dai commenti.