Zonale Geometrie als Tabelle (Spatial Analyst)
Zusammenfassung
Berechnet für jede Zone in einem Dataset die Geometriemaße (Fläche, Umfang, Stärke und die Eigenschaften der Ellipse) und gibt die Ergebnisse als Tabelle aus.
Weitere Informationen zur Funktionsweise von "Zonale Geometrie"
Bild
Verwendung
-
Eine Zone wird durch alle Flächen in der Eingabe definiert, die den gleichen Wert aufweisen. Die Flächen müssen nicht zusammenhängend sein. Sowohl Raster- als auch Feature-Datasets können als Zoneneingabe verwendet werden.
-
Wenn die Eingabezonendaten ein Feature-Dataset sind, muss die Zellengröße entweder durch Verarbeitungszellengröße oder in der Umgebungseinstellung Zellengröße festgelegt werden.
-
Die Berechnungen für jede Zone werden in der Ausgabetabelle aufgezeichnet.
Beim Festlegen der Daten für die Eingabezone entspricht das Standardzonenfeld dem ersten gültigen Feld. Sind keine anderen gültigen Felder vorhanden, wird das ObjectID-Feld als Standardfeld verwendet (z. B. OID oder FID).
Wenn ein reserviertes Feld (z. B. OBECTID, FID oder OID) für das Zonenfeld ausgewählt wird, kann dies ein mehrdeutiges Ergebnis zur Folge haben. Das Ergebnis beinhaltet nicht nur den Namen des konkreten reservierten Feldes, das für den jeweiligen Ausgabeformattyp notwendig ist, sondern auch das angegebene Zonenfeld. Wenn das angegebene Feld den gleichen Namen wie das reservierte Feld für das jeweilige Ausgabeformat aufweist, wird der Name für das Zonenfeld in der Ausgabe so geändert, dass alle Feldnamen im Ergebnis eindeutig sind.
Hinweis:Um ein Feld mit eindeutigen Werten zu erstellen, das keinen reservierten Namen hat, verwenden Sie die Geoverarbeitungswerkzeuge Feld hinzufügen und Feld berechnen.
-
In der Ausgabetabelle geht das Wertefeld immer den Feldern voraus, die die zonalen Ausgabeberechnungen enthalten. Das Wertefeld enthält die Werte der durch das Zonen-Dataset definierten Zonen.
-
Für die zonalen Berechnungen werden Gleitkommawerte verwendet.
-
Abgesehen vom Element "ORIENTATION" werden alle Ergebnisse in der Ausgabetabelle in Karteneinheiten angegeben. Die Werte für das Element "ORIENTATION" sind in Grad angegeben, mit einem zulässigen Bereich von 0 bis 180. ORIENTATION (Ausrichtung) wird als Winkel zwischen der X-Achse und der Hauptachse der Ellipse definiert. Die Werte des Ausrichtungswinkels nehmen gegen den Uhrzeigersinn zu, beginnend bei 0 im Osten (horizontal, rechts) und gehen bis 90, wo die Hauptachse vertikal ist.
Wenn eine bestimmte Zone aus nur einer Zelle besteht oder wenn die Zone ein einzelner quadratischer Block von Zellen ist, wird die Ausrichtung der Ellipse (in diesem Fall ein Kreis) auf 90 Grad festgelegt.
Syntax
Parameter | Erläuterung | Datentyp |
in_zone_data |
Das Dataset, das die Zonen definiert. Die Zonen können durch ein Ganzzahl-Raster oder einen Feature-Layer definiert werden. | Raster Layer | Feature Layer |
zone_field | Feld mit den Werten, die jede Zone definieren. Es muss sich dabei um ein Ganzzahlfeld des Zonen-Datasets handeln. | Field |
out_table |
Ausgabetabelle, die die Zusammenfassung der Werte in jeder Zone enthält. | Table |
processing_cell_size (optional) | Die Verarbeitungszellengröße für den zonalen Vorgang. Dies ist der Wert in der Umgebung, wenn dieser ausdrücklich festgelegt wurde. Wenn die Umgebungsvariable nicht festgelegt wird, wird die Standardeinstellung für die Zellengröße wie folgt anhand des Typs der Zonendaten bestimmt:
| Analysis Cell Size |
Codebeispiel
In diesem Beispiel werden die Geometriemaße für jede vom Eingabe-Polygon-Shapefile definierte Zone ermittelt.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outZonalGeometryAsTable = ZonalGeometryAsTable("zones.shp", "Classes", "zonalgeomout", 0.2)
In diesem Beispiel werden die Geometriemaße für jede vom Eingabe-Polygon-Shapefile definierte Zone ermittelt.
# Name: ZonalGeometryAsTable_Ex_02.py
# Description:Calculates for each zone in a dataset the specified geometry
# measure (area, perimeter, thickness, or the characteristics
# of ellipse) and reports the results as a table.
# Requirements: Spatial Analyst Extension
# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *
# Set environment settings
env.workspace = "C:/sapyexamples/data"
# Set local variables
inZoneData = "zones.shp"
zoneField = "Classes"
outTable = "zonalgeomout02.dbf"
processingCellSize = 0.2
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute ZonalGeometryAsTable
outZonalGeometryAsTable = ZonalGeometryAsTable(inZoneData, zoneField, "AREA", cellSize)