Extrahieren Sie den Rasterwert in das Polygonattribut

31

Ich habe Rasterdaten für einen Zustand, dessen Pixel Höhenangaben enthalten. Ich habe auch Vector Layer, die die 300 Abteilungen des Staates hat. Ich möchte mit ArcGIS den durchschnittlichen Höhenwert einer bestimmten Teilung aus den Rasterdaten ermitteln.

In ArcGIS habe ich versucht, einzelne Polygone per Maske zu extrahieren, um das Raster in 300 Raster zu schneiden. Anschließend habe ich aus einzelnen Rastern die durchschnittliche Höhe ermittelt, aber es hat Tage gedauert, bis die Arbeit abgeschlossen war. Gibt es einen anderen einfachen Weg, es zu bekommen?

Mahesh
quelle
Wenn Sie eine neue Frage haben, fragen Sie es bitte durch Klicken Frage stellen Taste. Fügen Sie einen Link zu dieser Frage hinzu, wenn dies zur Bereitstellung des Kontexts beiträgt.
Chris W
Ich danke dir sehr. Es hat bei mir funktioniert. Seit langem habe ich versucht, zonale Statistiken zu erstellen. Es hat jetzt funktioniert.
Nochmals vielen

Antworten:

28

Hierfür gibt es verschiedene Möglichkeiten. Wenn Sie keinen Spatial Analyst haben, können Sie dies trotzdem wie folgt tun:

  • Konvertieren Sie zuerst das Raster mit dem Raster to PointWerkzeug in Punkte . Dies gibt Ihnen ein Punktegitter und ist relativ schnell - 16 Millionen Punkte wurden in ungefähr 2 Minuten erstellt (stellen Sie sicher, dass Sie das Rendern deaktivieren, damit sie nicht angezeigt werden ;-)).

  • Verwenden Sie jetzt das Werkzeug Analyse-Tools -> Überlagern - Räumliche Verbindung . Ziel-Feature ist Ihr 300-Polygon-Layer, Join ist der Punkt-Layer. Gehen Sie als eins zu eins. Erstellen Sie eine "Feldzuordnung von Join-Features". Stellen Sie dabei sicher, dass die Zusammenführungsregel "Mittelwert", "Median" oder "Modus" ist (oder alle, denke ich). Der resultierende einzelne Polygon-Layer sollte alle 300 Polygonbereiche enthalten, in denen jeweils Attribute mit den angeforderten Durchschnittstypen berechnet wurden.

Das sollte Ihnen mit minimalem Aufwand die Zahlen bringen, die Sie benötigen (obwohl Sie ziemlich lange auf die Verarbeitung warten - Spatial Joins sind langsam).

GIS-Jonathan
quelle
3
Sehr guter Rat, um die Spatial Analyst-Erweiterung zu vermeiden. Nur ist es für große Raster sehr langsam.
Nadya
21

Dies ist die Aufgabe des Zonal Statistics-Tools . Gehen Sie zu Spatial Analyst Tools> Zonal> Zonal Statistics und wählen Sie die Mean-Statistik aus. Das Raster sollte dazu eine Attributtabelle haben.

Nadya
quelle
2
Hinweis: Hierfür ist die Erweiterung Spatial Analyst erforderlich.
GIS-Jonathan
3
(+1) Ein weiterer Hinweis: Die hier von Nadya empfohlene Verarbeitung dauert nur Sekunden (oder Bruchteile davon), nicht Minuten. Das Prinzip besteht darin, dass bei der Analyse von Rasterdaten die Verwendung von Rasterprozeduren (für die natürlich eine Rastersoftware wie SA erforderlich ist) in der Regel weitaus effizienter ist (in Bezug auf die Verwendung Ihrer Zeit, der Computerzeit und des Arbeitsspeichers des Computers) als Konvertieren von Rastern in das Vektorformat und Verwenden von Vektorprozeduren.
Whuber
Ich danke Ihnen herzlich "NADYA". Es funktioniert, aber das Höhenergebnis ändert sich von 10 m auf 100 m, wenn ich es mit meinem separaten Ergebnis für ausgeschnittene Raster vergleiche Raster Ich habe durchschnittliche Höhe gesammelt, aber es hat Tage gedauert, um die Arbeit abzuschließen. Gibt es einen anderen einfachen Weg, um es zu bekommen.)
Mahesh
Ich habe die gleiche Aufgabe ausgeführt, aber die Ausgabe-Zonenzusammenfassungstabelle enthält nicht alle Features aus dem Zonen-Shapefile. Wie ist das möglich? Das Raster deckt jedes einzelne Zonen-Feature ab, und ich habe beim Ausführen des Tools die Option zum Ignorieren von Nullwerten ausgewählt.
Salman
3
Hmm, wenn ich dies mit dem Zonal Statistics-Tool mache, erstellt es ein neues Raster und hängt das Maximum (oder den Durchschnitt, aber ich suche nach einem Maximum) nicht an die Attributtabelle des Vektorebenen-Layers an. Ich musste die Zonenstatistik als Tabellenwerkzeug verwenden und dann eine räumliche Verknüpfung zwischen der resultierenden Tabelle und der ursprünglichen Vektorebene ausführen.
traggatmot
3

Sie können Geospatial Modeling Environment- Tools (unabhängige Tools) verwenden, die zuvor Hawths Tools waren . Von dort aus können Sie Rasterwerte der Ausdehnung von Polygonen mit beliebigen Statistiken extrahieren. Sie können auch thematische Variablen mit ihrem Bruch extrahieren. Das Ergebnis wird automatisch zu Ihrem Shapefile hinzugefügt. Dieses Tool funktioniert zusammen mit ArcGIS und R.

Verwenden Sie insbesondere das Werkzeug isectpolyrst , um zugrunde liegende Rasterinformationen in Polygon-Shapefiles einzufügen . Es gibt auch keine Probleme mit überlappenden Polygonen.

Nandika
quelle
0

Schritt 1: Feature to Point (Datenverwaltung) Schritt 2: Extrahieren mehrerer Werte zu Punkten (Spatial Analyst)

Pieterjan
quelle
3
Das Hinzufügen eines kleinen Kontextes zu Ihrer Antwort ist hilfreich! Bitte nimm an der Community-Tour teil und sieh dir unsere Hilfeseite an! gis.stackexchange.com/help
MaryBeth
0

Sie können die folgenden Schritte ausführen: 1.Vektor zum Rastern (Ihrer Polygone) 2. Extrahieren Sie mithilfe von räumlichen Beispielanalysen den Rasterwert als Tabellendatei (Ihre Rasterdatei und die Ausgabe aus "Schritt 1". 3. Verwenden Sie "Abgelegt verbinden" für Tabellenergebnis zum Polygon hinzufügen Attribut Viel Glück

Vahid Nasiri
quelle