Mit der Spatial Analyst-Lizenz verfügbar.
Zusammenfassung
Berechnet die geometrischen Maße (Fläche, Umfang, Stärke und die Eigenschaften der Ellipse) für jede Zone in einem Dataset und gibt die Ergebnisse als Tabelle aus.
Weitere Informationen zur Funktionsweise von "Zonale Geometrie"
Abbildung
VALUE AREA PERIMETER THICKNESS XCENTROID YCENTROID MAJORAXIS MINORAXIS ORIENTATION 0 5.0 14.0 0.5 2.300 2.100 2.338 0.681 60.714 1 5.0 14.0 0.5 1.900 2.100 2.668 0.596 126.061 2 3.0 8.0 0.5 3.167 2.167 1.286 0.743 135.000 4 2.0 6.0 0.5 0.500 1.000 1.128 0.564 90.000
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 Features können als Zoneneingabe verwendet werden.
Die Verarbeitungszellengröße kann über einen numerischen Wert definiert oder aus einem vorhandenen Raster-Dataset abgerufen werden. Wird die Zellengröße nicht explizit über den Parameterwert angegeben, wird sie aus der Umgebung "Zellengröße" abgeleitet, falls diese angegeben wurde. Wenn die Zellengröße nicht im Parameter oder in der Umgebung angegeben wurde, wird die standardmäßige Ausgabezellengröße basierend auf dem Typ des Eingabe-Datasets bestimmt. Dabei wird folgendermaßen vorgegangen:
- Wenn es sich bei dem Eingabe-Dataset um ein Raster handelt, wird die Zellengröße des Datasets verwendet.
- Wenn das Eingabe-Dataset ein Feature ist und die Umgebung Fang-Raster festgelegt wurde, wird die Zellengröße des Fang-Rasters verwendet. Wenn kein Fang-Raster festgelegt wurde, wird die Zellengröße aus der Breite oder Höhe der Ausdehnung (je nachdem was kürzer ist) berechnet, indem der Wert durch 250 dividiert wird. Dabei wird die Ausdehnung in der Umgebung in Ausgabekoordinatensystem angegeben.
Wenn die Zellengröße mit einem numerischen Wert angegeben wird, wird dieser vom Werkzeug direkt für das Ausgabe-Raster verwendet.
Wenn die Zellengröße mit einem Raster-Dataset angegeben wird, zeigt der Parameter anstelle des Zellengrößenwerts den Pfad des Raster-Datasets an. Die Zellengröße dieses Raster-Datasets wird direkt in der Analyse verwendet, vorausgesetzt der Raumbezug stimmt mit dem Ausgabe-Raumbezug überein. Wenn der Raumbezug des Datasets nicht mit dem Ausgabe-Raumbezug übereinstimmt, wird er basierend auf der ausgewählten Projektionsmethode für Zellengröße projiziert.
Die Berechnungen für jede Zone werden in der Ausgabetabelle aufgezeichnet.
Wenn die Eingabe-Raster- oder -Feature-Zonen-Daten (in_zone_data in Python) überlappende Polygone aufweisen, wird die zonale Analyse nicht für jedes einzelne Polygon ausgeführt. Da die Feature-Eingabe in ein Raster konvertiert wird, kann jede Position über nur einen Wert verfügen.
Eine alternative Methode besteht darin, die zonale Operation für jede der Polygonzonen iterativ zu verarbeiten und die Ergebnisse zu sortieren.
Bei Angabe der Eingabe-Raster- oder -Feature-Zonen-Daten (in_zone_data in Python) entspricht das Standard-Zonenfeld dem ersten verfügbaren Ganzzahl- oder Textfeld. Sind keine anderen gültigen Felder vorhanden, wird das ObjectID-Feld als Standardfeld verwendet (z. B. OID oder FID).
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.
Alle Ergebnisse in der Ausgabetabelle sind in Karteneinheiten angegeben, ausgenommen das Element ORIENTATION, das in Grad mit einem Wert zwischen 0 bis 180 angegeben ist. Die 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.
Weitere Informationen zur Geoverarbeitung von Umgebungen mit diesem Werkzeug finden Sie unter Analyseumgebungen und Spatial Analyst.
Syntax
ZonalGeometryAsTable(in_zone_data, zone_field, out_table, {processing_cell_size})
Parameter | Erklärung | 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 | Das Feld, das die Werte enthält, die die einzelnen Zonen 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. Das Format der Tabelle wird durch das Ausgabeverzeichnis und den Ausgabepfad bestimmt. Die Ausgabe ist standardmäßig eine Geodatabase-Tabelle. Wenn der Pfad sich nicht in einer Geodatabase befindet, wird das Format durch die Erweiterung bestimmt. Wenn die Erweiterung .dbf lautet, erfolgt die Ausgabe im dBASE-Format. Wenn keine Erweiterung angegeben wird, ist die Ausgabe eine INFO-Tabelle. Beachten Sie, dass INFO-Tabellen nicht als Eingabe in ArcGIS Pro unterstützt werden und nicht angezeigt werden können. | Table |
processing_cell_size (optional) | Die Zellengröße des Ausgabe-Rasters, das erstellt wird. Dieser Parameter kann über einen numerischen Wert definiert oder aus einem vorhandenen Raster-Dataset abgerufen werden. Wenn die Zellengröße nicht explizit als Parameterwert angegeben wurde, wird der Zellengrößenwert der Umgebung verwendet, sofern dieser angegeben wurde. Andernfalls werden zusätzliche Regeln verwendet, um ihn aus anderen Eingaben zu berechnen. Weitere Informationen finden Sie im Abschnitt zur Verwendung. | 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, outTable, processingCellSize)
Umgebungen
Lizenzinformationen
- Basic: Erfordert Spatial Analyst
- Standard: Erfordert Spatial Analyst
- Advanced: Erfordert Spatial Analyst