REPORT QGIS: UN ESEMPIO AVANZATO

L’atlas di QGIS permette di creare una stampa in serie definendo un SOLO vettore di copertura. I Report di QGIS permettono di usare un numero non ben precisato di vettori di copertura e quindi di creare una articolata stampa in serie, unico requisito richiesto è che i vari vettori abbiano un campo comune oppure che si utilizzino vettori sovrapposti.

Il miglior modo per spiegare i report è facendo un esempio: realizzare una stampa in serie utilizzando due vettore di copertura: le regioni ISTAT e le province ISTAT (avrei potuto aggiungere un terzo vettore con i comuni ISTAT) ed esportare in PDF.

Il primo vettore di coperture creerà tante pagine quante sono le regioni e il secondo creerà tante pagine quante sono le province, ma questi due vettori sono tra loro legati dal campo COD_REG (è un legame che interpreta QGIS e i report, non occorre far altro) che ci permetterà di incrociare le pagine delle regioni con quelle delle province. Naturalmente è possibile aggiungere altre pagine come l’intestazione o il piè di pagina, ma questo è descritto nel mio primo blog post sui report.

ecco il risultato:

Iniziamo caricando in QGIS due strati: regioni e province ISTAT.

QGIS e strati ISTAT

Prepariamo tutto ciò che ci serve per creare i report:

  • duplichiamo il layer regioni due volte perché ci servirà come panoramica per le regioni e per le province;
PANORAMICHE
  • tematizziamo i layer usando delle regole: questo permetterà di visualizzare solo l’elemento corrente
TEMATIZZAZIONE TRAMITE REGOLE
  • creiamo delle viste in modo da visualizzare un layer per volta: questo è molto utile nel compositore di stampe
VISTE
  • creaiamo un report:
Menu progetto | Nuovo report
  • aggiungo un gruppo (che sarebbe il primo vettore di copertura)
aggiungo gruppo
  • seleziono il layer regioni e come campo COD_REG:
aggiungo la mappa
  • aggiungo due riquadri mappa, la prima per le regioni, la seconda come panoramica (settare la panoramica, si procede come sempre):
definisco primo vettore
  • aggiungo sotto-gruppo per il layer province (settare il necessario):
definisco secondo vettore
  • prima prova di stampa 
esporto in PDF

queste sono le fasi fondamentali da seguire, per maggiori dettagli seguire il video:

video demo – report avanzato

PROGETTO E DATI

EDIT: in questo esempio ho utilizzato un DB spatialite, nel caso di shapefile occorre usare la variabile @atlas_featureid +1 (occorre sommare uno) altrimenti tutti i report sarebbero sfasati di uno in quanto la variabile inizia da zero;

EDIT2: Sempre nel caso degli shapefile ISTAT, il campo COD_PROV non è un vero campo univoco e quindi il report non funzionerebbe; per ovviare occorre creare un nuovo campo (PK_UID tipo integer 9) e popolarlo con la funzione row_number.

EDIT3: una alternativa all’uso della variabile @atlas_featureid è l’uso della variabile @atlas_feature assieme alla funzione attribute

Se l’articolo vi è stato utile mettete un like, grazie!!!

Potete contribuite a mantenere vivo il blog con una piccola donazione: PayPal (messaggio: report QGIS o blog Pigrecoinfinito)

22 pensieri su “REPORT QGIS: UN ESEMPIO AVANZATO

  1. Is it possible to write the report and read it again for other data?
    I can see that there is an option to save the report but I can only read it when I create a group (for one group). Is it possible to read all the report?

    Piace a 1 persona

  2. Siamo a luglio 2020. Peró mi pare di capire che ancora, non sia possibile far avanzare il report per vederlo in azione, Ma bisogna sempre ricorrere all’esportazione.
    Sai se ci sono sviluppi in corso sul report?
    GRazie!

    Piace a 1 persona

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo di WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione /  Modifica )

Google photo

Stai commentando usando il tuo account Google. Chiudi sessione /  Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione /  Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione /  Modifica )

Connessione a %s...

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