Vai al contenuto

I dati geografici vettoriali

Cenni sul Motore delle Espressioni

HfcQGIS

Field Calc

Il pulsante pallottoliere nella tabella degli attributi consente di eseguire calcoli sulla base di valori di attributo esistenti o funzioni definite, ad esempio, per calcolare la lunghezza o l’area delle caratteristiche geometriche. I risultati possono essere scritti in un nuovo campo di attributo, un campo virtuale, oppure possono essere utilizzati per aggiornare i valori in un campo esistente.

field calc rapido:

field calc completo:

Introduzione

Il Calcolatore di campi è uno strumento essenziale di QGIS che permette di:

  • Creare nuovi campi
  • Aggiornare campi esistenti
  • Eseguire calcoli su attributi
  • Manipolare dati attraverso espressioni

Accesso al Calcolatore

  1. Aprire la tabella degli attributi del layer
  2. Cliccare sull'icona del calcolatore di campi (abaco)
  3. Alternativa: tasto destro sul layer → Apri calcolatore di campi

Interfaccia principale

  • Nome del campo di output
  • Tipo di campo (Testo, Numero intero, Decimale, Data, ecc.)
  • Lunghezza del campo
  • Precisione (per numeri decimali)
  • Area per scrivere le formule
  • Anteprima del risultato
  • Messaggi di errore
  • Funzioni raggruppate per categoria
  • Operatori
  • Campi disponibili

Tipi di campo principali

  • Lunghezza: numero massimo di caratteri
  • Esempio: nomi, descrizioni
  • Numeri interi
  • Esempio: conteggi, codici
  • Numeri con decimali
  • Precisione: numero di decimali
  • Esempio: misure, calcoli
  • Formato data
  • Esempio: date eventi, scadenze

Esempi pratici di calcolo

-- Area in ettari partendo da metri quadri
"area_m²" / 10000

-- Perimetro in kilometri
$length / 1000
-- Unione di due campi
"nome" || ' ' || "cognome"

-- Conversione in maiuscolo
upper("nome_campo")
-- Età di un edificio
year(now()) - "anno_costruzione"

-- Formattazione data
format_date("data_campo",'dd/MM/yyyy')
CASE
  WHEN "popolazione" > 100000 THEN 'Grande'
  WHEN "popolazione" > 50000 THEN 'Media'
  ELSE 'Piccola'
END

Funzioni utili

  • $area: area dell'elemento
  • $length: lunghezza dell'elemento
  • $perimeter: perimetro dell'elemento
  • $x: coordinata X del centroide
  • $y: coordinata Y del centroide
  • concat(): unisce stringhe
  • left(): primi n caratteri
  • right(): ultimi n caratteri
  • substr(): estrae sottostringhe
  • regexp_replace(): sostituisce usando espressioni regolari
  • round(): arrotondamento
  • ceil(): arrotonda per eccesso
  • floor(): arrotonda per difetto
  • abs(): valore assoluto
  • now(): data e ora corrente
  • age(): calcola intervallo tra date
  • day(): estrae il giorno
  • month(): estrae il mese
  • year(): estrae l'anno

Esercizi pratici

"popolazione" / ($area/1000000)
'ID_' || "cod_provincia" || '_' || "cod_comune"
CASE
  WHEN $area > 1000000 THEN 'XL'
  WHEN $area > 500000 THEN 'L'
  WHEN $area > 100000 THEN 'M'
  ELSE 'S'
END

Suggerimenti e best practices

  1. Verificare sempre il tipo di campo appropriato
  2. Usare l'anteprima prima di applicare i calcoli
  3. Fare backup dei dati prima di modifiche massive
  4. Considerare la precisione necessaria per i decimali
  5. Documentare le formule complesse con commenti

Problemi comuni e soluzioni

  • Verificare la compatibilità dei tipi di dati
  • Usare funzioni di conversione quando necessario
  • Controllare parentesi
  • Verificare operatori
  • Usare l'anteprima
  • Impostare lunghezza adeguata
  • Considerare casi estremi

Selezione per Espressione

Introduzione

La funzione "Seleziona per espressione" è uno strumento potente di QGIS che permette di selezionare elementi in un layer utilizzando espressioni logiche e matematiche. Si trova nella barra degli strumenti principale o premendo Ctrl+F3.

Interfaccia

  1. Editor espressioni: Area dove si scrive l'espressione
  2. Lista funzioni: Elenco delle funzioni disponibili raggruppate per categorie
  3. Anteprima: Mostra un'anteprima del risultato dell'espressione
  4. Valori: Lista dei valori disponibili nel campo selezionato

Operatori principali

  • Confronto: =, !=, >, <, >=, <=
  • Logici: AND, OR, NOT
  • Aritmetici: +, -, *, /, %
  • Stringhe: ||, LIKE, ILIKE

Esempi pratici

"nome_campo" = 'valore'
Esempio: "popolazione" = 1000

"campo_numerico" >= 100 AND "campo_numerico" <= 500
Esempio: "altitudine" >= 200 AND "altitudine" <= 1000

"nome_campo" LIKE '%testo%'
Esempio: "nome_comune" LIKE 'San%'

"campo1" = 'valore1' OR ("campo2" >= 100 AND "campo2" <= 500)

Funzioni utili

  • $area: area dell'elemento
  • $length: lunghezza dell'elemento
  • within(): verifica se una geometria è contenuta in un'altra
  • lower(): converte in minuscolo
  • upper(): converte in maiuscolo
  • substr(): estrae una sottostringa
  • year(): estrae l'anno
  • month(): estrae il mese
  • day(): estrae il giorno

DISCLAIMER

Il presente materiale didattico è stato realizzato e aggiornato da Salvatore Fiandaca nell'ambito del Academy Pigrecoinfinito - 2026.

Sviluppato utilizzando QGIS 3.44 Solothurn LTR nel periodo Maggio 2026.

Materiale rilasciato con licenza Creative Commons Attribuzione 4.0 Internazionale (CC BY 4.0): sei libero di condividerlo e modificarlo, anche per fini commerciali, a condizione di riconoscerne la paternità. Vedi la pagina Licenza uso.

©2026 Salvatore Fiandaca - CC BY 4.0.