Vai al contenuto

espressioni

QGIS 4.2: novità tra espressioni e tabella attributi

Introduzione

QGIS 4.2 è una release con 59 nuove feature, distribuite su 17 categorie e realizzate da 24 sviluppatori diversi. Il grosso del lavoro si concentra su 3D e Symbology, seguiti da correzioni notevoli e da novità su point cloud e processing:

Categoria Feature
3D Features 12
Symbology 10
Notable Fixes 8
Point Clouds 6
Processing 5
Print Layouts 3
Data Providers 3
Expressions 2
QGIS Server 2
Breaking Changes 1
User Interface 1
Data Management 1
Application and Project Options 1
Sensors 1
Profile Plots 1
Browser 1
Programmability 1

Buona parte del lavoro porta la firma di Nyall Dawson (North Road), autore di quasi un terzo delle feature:

# Sviluppatore Feature Azienda
1 Nyall Dawson 19 North Road
2 Dominik Cindric 9
3 Jean Felder 3 Oslandia
4 Julien Cabieces 3 Oslandia
5 Martin Dobias 3 Lutra Consulting
6 Stefanos Natsis 3 Lutra Consulting
7 Mathieu Pellerin 2 OPENGIS.ch

In questo panorama, le espressioni ricevono "solo" 2 nuove funzioni (categoria Expressions), ma sono entrambe di uso quotidiano nel Field Calc, e la tabella attributi guadagna una scorciatoia molto pratica verso la calcolatrice di campi (categoria Data Management). Sono proprio questi due ambiti il focus di questo post: vediamo nel dettaglio le novità, con particolare attenzione alle espressioni e alla tabella attributi.

In breve

2 nuove funzioni: scale_cubic_bezier (interpolazione con curva di Bézier cubica) e concat_ws (concatenazione con separatore). Tabella attributi: voce "Field Calculator" nel menu delle intestazioni di colonna. Inoltre alcuni fix rilevanti a concat(), all'operatore IN con nodes() e a crash della calcolatrice di campi.

Etichette miste con tag HTML in QGIS

Introduzione

A partire da QGIS 3.28 Firenze, grazie al finanziamento del gruppo degli utenti svizzeri e all'implementazione di Nyall Dawson (North Road), è possibile creare etichette miste direttamente tramite espressioni usando tag HTML e CSS inline.

Questo apre nuove possibilità: cambiare carattere, stile, colore e dimensione del testo all'interno della stessa etichetta, senza dover ricorrere a layer multipli o soluzioni alternative.

Etichette miste con tag HTML

Usando i tag HTML nelle espressioni del field calculator o nelle etichette di QGIS è possibile mescolare stili diversi in una singola etichetta.

QGIS 4.0: nuove funzioni nel Field Calc

Introduzione

Con QGIS 4.0 il Field Calc si arricchisce di nuove funzioni utili sia per la gestione di geometrie sia per la manipolazione di stringhe e tempi. Migliora inoltre la tabella attributi, con il doppio clic per lo zoom rapido sulle feature e la possibilità di copiare i valori originali (raw) degli attributi. In questo post vediamo le novità una per una, con un esempio rapido per capire subito quando usarle.

In breve

15 nuove funzioni: nuovo predicato equals, 4 per i modelli magnetici, 3 per gradi/minuti/secondi, unaccent, substr_count e 5 funzioni legate ai fusi orari. Tabella attributi: doppio clic per zoom e copia valori raw.

Perché in QGIS manca la funzione Fattoriale

Introduzione

Vi siete mai chiesti perché QGIS, pur avendo un ricchissimo set di funzioni matematiche nel calcolatore di campi, non include la funzione fattoriale? In questo articolo esploreremo le ragioni di questa assenza e scopriremo come implementare facilmente questa funzione quando necessario.

La funzione Fattoriale

Il fattoriale di un numero naturale n (indicato con n!) è il prodotto di tutti i numeri interi positivi minori o uguali a n. Ad esempio: 5! = 5 × 4 × 3 × 2 × 1 = 120

Statistiche su punti sovrapposti

Introduzione

Ho un file vettore di punti molti dei quali sono sovrapposti. come creare una etichetta che mostri il valore massimo, minimo o medio di un campo, calcolandolo ovviamente solo per i punti sovrapposti.

Array_agg

Restituisce un array di valori aggregati da un campo o espressione.

Mappa valori generata al volo

Introduzione

Come generare, in un form, un menu a tendina popolato con valori recuperati, al volo, da altro layer.

current_value

all'interno di un form restituisce il valore corrente non salvato di un campo nel modulo o nella riga della tabella attualmente in fase di modifica. Questo differirà dai valori effettivo dell'attributo dell'elemento per gli elementi che sono attualmente in fase di modifica o che non sono ancora state aggiunte ad un layer.

Rapporto di allungamento

Introduzione

Calcolare il rapporto di allungamento (di Whitebox) usando le espressioni di QGIS.

Elongation ratio

Il rapporto di allungamento (E) è:

E = 1 - S / L

Dove S è la lunghezza dell'asse corto e L è la lunghezza dell'asse lungo. Le lunghezze degli assi vengono determinate stimando il riquadro di delimitazione minimo.

Crea date da una successione numerica

Introduzione

Data una data iniziale e una serie di numeri da 0 a 999, popolare un attributo data che segue il seguente pattern: a 0 corrisponde la data 01/01/2019, a 1 corrisponde la data 02/01/2019 e così via fino a 999, ovvero 26/09/2021.

make_date & make_interval

Queste due funzioni permettono di risolvere il quesito esposto sopra, vediamo come

Un uso intelligente della distanza di LEVENSHTEIN

Introduzione

"Quando i maledetti "pubblicatori" di dati, scrivono i nomi delle Regioni errati e/o senza codici regionali, il valore minimo della distanza Levenshtein può essere una salvezza" (cit. Andrea Borruso)

LEVENSHTEIN

Restituisce la distanza di Levenshtein tra due stringhe. Questa equivale al minimo numero di modifiche di carattere (inserimenti, cancellazioni o sostituzione) richieste per cambiare una stringa in un'altra. La distanza di Levenshtein è una misura della similarità tra due stringhe. Distanze più piccole corrispondono a stringhe più simili, e distanze più grandi corrispondono a stringhe più differenti. La distanza è sensibile alle lettere maiuscole.