Wie berechne ich Flächen eines Flächen-Shapefiles in Quadratmetern oder in Hektar (ha)?
Diese Funktionalität habe ich in den Vektorwerkzeugen nicht gefunden.
Wie berechne ich Flächen eines Flächen-Shapefiles in Quadratmetern oder in Hektar (ha)?
Diese Funktionalität habe ich in den Vektorwerkzeugen nicht gefunden.
Antworten:
Machen Sie die Ebene bearbeitbar und verwenden Sie dann den Feldrechner (Ebene> Attributtabelle öffnen> Feldrechner / Strg + I oder Rechtsklick-Shapefile> Attributtabelle öffnen> Feldrechner / Strg + I). Es gibt einen Operator "$ area", der die Fläche jeder Zeile in der Tabelle berechnet. Alle Einheiten werden in den Einheiten der Projektion berechnet. Daher möchten Sie diese wahrscheinlich auf eine Projektion projizieren, die vorher Fuß oder Meter verwendet, anstatt Lat / Lon.
area(transform($geometry, 'EPSG:4326','EPSG:3763'))
?
Dies kann auch mit den Optionen Vektor | Geometriewerkzeuge | Geometriespalten hinzufügen / exportieren erfolgen. Dabei wird ein neues Shapefile mit hinzugefügten Spalten für Fläche und Umfang (oder Länge) erstellt.
Bearbeiten: (Mit dem obigen Werkzeug können Sie auch "Als neue Formdatei speichern" in V1.8 deaktivieren, das Shapefile wird jetzt nur noch aktualisiert!)
Die Verwendung des Feldrechners ist jedoch wahrscheinlich eine bessere Idee, da kein neues Shapefile erstellt werden muss.
Ich habe eigens dafür ein Drehbuch geschrieben. Wenn Sie Ihre Daten nicht erneut projizieren möchten, können Sie die Fläche mit Ellipsoid-Mathematik berechnen.
Processing Toolbox -> Tools -> Get scripts from on-line scripts collection -> Ellipsoidal Area
Sie finden das Skript installiert in
Processing Toolbox -> Utils -> Ellipsoidal area
Das Tool sollte selbsterklärend sein und es Ihnen ermöglichen, die Fläche unabhängig von der Projektion in Einheiten Ihrer Wahl zu berechnen.
Wenn sich die Bereiche, die Sie betrachten, ändern können, z. B. Infrastrukturlayouts, Einzugsgebiete, Untersuchungsgebiete usw., finde ich es nützlich, die Bereiche einfach zu kennzeichnen , anstatt sie als Attribute hinzuzufügen.
Label-> round($area/10000,2)||' ha'
Auf diese Weise müssen Sie nicht so oft daran denken, die Einzugsbereiche in den Attributtabellen zu aktualisieren.