Calcolo delle aree poligonali in QGIS?


72

Come posso calcolare le aree di uno shapefile di area in metri quadrati o in acri (ha)?

Non ho trovato quella funzionalità negli strumenti vettoriali.


Domanda di follow-up: ho uno strato nel piano di stato NAD83. Quando uso questi comandi crea l'area in piedi. Cosa succede se desidero acri o miglia quadrate? Grazie
C_K il

Le due risposte fornite funzionano ma sono un po 'lente da implementare soprattutto quando si cerca di determinare l'area di molti file vettoriali poligonali. Non esiste un plug-in o un altro modo per ottenere l'area di un poligono semplicemente facendo clic con il pulsante destro del mouse sul poligono? Le risposte fornite finiscono con un nuovo attributo di campo (cioè area) ma il valore non si aggiorna se il poligono viene modificato. Pertanto, in molti casi non è necessario che l'area venga visualizzata in un attributo di campo separato. Se l'area potesse essere mostrata come un numero in un piccolo grafico, in fondo alla pagina, ecc. Sarebbe sufficiente. Quindi, è il
David

2
Utilizzando lo strumento di identificazione, fare clic su un poligono. L'area viene calcolata e visualizzata in "Derivati" nella finestra di identificazione. È possibile modificare le unità in Impostazioni.
csk

Risposte:


70

Rendi modificabile il livello, quindi usa la calcolatrice di campo (Livello> Apri tabella attributi> Calcolatrice di campo / Ctrl + I o fai clic con il pulsante destro del mouse su Shapefile> Apri tabella di attributi> Calcolatrice di campo / Ctrl + I). Esiste un "area $" dell'operatore che calcolerà l'area di ciascuna riga della tabella. Tutte le unità verranno calcolate nelle unità della proiezione, quindi probabilmente vorrai proiettarla su una proiezione che utilizza piedi o metri prima di farlo, piuttosto che lat / lon.


6
Nelle versioni attuali di QGIS se i tuoi dati sono in un CRS geografico puoi usare la funzione transform () per proiettare le geometrie su un sistema proiettato (preferibilmente uno uguale di area) senza la necessità di duplicare i tuoi dati. Nel calcolatore di campo, dovrebbe funzionare qualcosa del genere: area ($ geometry, 'EPSG: 4326', 'EPSG: 3763')
Alexandre Neto,

9
@AlexandreNeto: vuoi dire area(transform($geometry, 'EPSG:4326','EPSG:3763'))?
Stewart Macdonald,

@smacdonald sì, errore mio.
Alexandre Neto,

18

Questo può essere fatto anche con Vector | Strumenti geometria | Aggiungi / esporta colonne geometriche, che crea un nuovo file di forma con l'aggiunta di colonne di area e perimetro (o lunghezza).

Modifica: (usando lo strumento sopra, puoi anche deselezionare "salva come nuovo file di forma" in V1.8, lo shapefile ora è solo aggiornato!)

L'uso del calcolatore di campo è probabilmente un'idea migliore, poiché non richiede la creazione di un nuovo shapefile.


Non è possibile modificare gli attributi del file di forma senza prima abilitare la modifica (il calcolo dei conteggi dell'area come la modifica degli attributi, si sta aggiungendo una nuova colonna). Tieni presente che tutte le unità verranno calcolate nelle unità di proiezione (metri bu default), quindi prima di riproiettarlo su un sistema di coordinate proiettato.
Hasan Mustafa,

4

Ho scritto una sceneggiatura specifica per questo. Se non si desidera riproiettare i dati, è possibile calcolare l'area utilizzando la matematica ellissoidale.

Processing Toolbox -> Tools -> Get scripts from on-line scripts collection -> Ellipsoidal Area

Troverai lo script installato in Processing Toolbox -> Utils -> Ellipsoidal area

Lo strumento dovrebbe essere autoesplicativo e ti permetterà di calcolare l'area in unità di tua scelta indipendentemente dalla proiezione.


Puoi dare un esempio migliore come codice?
Léo Léopold Hertz

0

Se le aree che stai guardando possono cambiare, come ad esempio layout di infrastrutture, bacini idrografici, aree di studio ecc., Trovo utile etichettare semplicemente le aree, invece di aggiungerle come attributi.

Label-> round($area/10000,2)||' ha'

In questo modo non è necessario ricordare di aggiornare spesso le aree di raccolta nelle tabelle degli attributi.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.