buongiorno,
non riesco proprio a capire array, aggregate e dintorni.
ho un file vettore di punti molti dei quali sono sovrapposti.
voglio creare una etichetta che mi mostri il valore massimo, minimo o medio di un campo, calcolandolo ovviamente solo per i punti sovrapposti.
mi aiutereste a mettere insieme le espressioni?
sono arrivato a questo ma ovviamente non essendoci indicazioni spaziali il risultato è il valore massimo di tutto il dataset.
anziché max si può usare anche min e avg
per avere il minimo usa array_min, per avere la media array_mean ecc…
APPROFONDIMENTI
La funzione array_agg aggrega valori dell’attributo E, il group_by gli dice che l’aggregazione deve avvenire per posizione geom_to_wkt($geometry,2).
Ho usato la funzione geom_to_wkt che permette di inserire una precisione sulla posizione.
In questo caso bisogna stare attenti al fatto che, se le coordinate dei punti sono espresse in un CRS geografico, 2 cifre decimali potrebbero essere poche per distinguere punti che non sono effettivamente sovrapposti (l’espressione potrebbe considerare come sovrapposti anche punti molto distanti tra loro).
Se il CRS è proiettato, con unità di misura in metri, allora 2 cifre decimali sono solitamente sufficienti, a meno che ci siano punti non sovrapposti che distano fra loro meno di 1 cm.