Skip To Content

Zonales Histogramm

Mit der Spatial Analyst-Lizenz verfügbar.

Zusammenfassung

Erstellt eine Tabelle für die Anzahl der Zellenwerte der Eingabe "Wert" für jede eindeutige Zone.

Verwendung

  • Anhand der Ausgaben dieses Werkzeugs lässt sich die Häufigkeitsverteilung der Werte in einem Dataset innerhalb Klassen eines anderen Datasets untersuchen. Beispiele hierfür sind die Neigungsverteilung innerhalb der Landnutzungsklassen, die Niederschlagsverteilung innerhalb der Höhenklassen oder die Verbrechensverteilung nach Polizeibezirken.

  • 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.

  • Bei Abweichungen der Zellengröße zwischen den Eingabe-Raster- oder -Feature-Zonen-Daten (in_zone_data in Python) und dem Eingabe-Werte-Raster (in_value_raster in Python) entspricht die Ausgabezellengröße dem Maximum der Eingabedaten. In diesem Fall wird das Eingabe-Werte-Raster intern als Fang-Raster verwendet. Wenn die Zellengröße übereinstimmt, die Zellen jedoch nicht ausgerichtet sind, wird das Eingabe-Werte-Raster intern als Fang-Raster verwendet. In beiden Fällen wird ein internes Resampling ausgelöst, bevor die zonale Operation ausgeführt wird.

    Wenn die Zonen- und Werteingaben jeweils Raster mit derselben Zellengröße sind und die Zellen ausgerichtet sind, werden sie direkt in dem Werkzeug verwendet. Während der Werkzeugausführung wird dann kein internes Resampling durchgeführt.

  • Wenn es sich bei den Eingabe-Raster- oder -Feature-Zonen-Daten (in_zone_data in Python) um ein Raster handelt, muss dies ein Integer-Raster sein.

  • Wenn die Eingabe-Raster- oder -Feature-Zonen-Daten (in_zone_data in Python) ein Feature sind, werden sie intern in ein Raster konvertiert, wobei die Zellengröße und die Zellenausrichtung aus dem Eingabe-Werte-Raster (in_value_raster in Python) verwendet werden.

  • Wenn die Eingabe-Raster- oder -Feature-Zonen-Daten (in_zone_data in Python) ein Punkt-Feature sind, ist es möglich, dass eine bestimmte Zelle des Eingabe-Werte-Rasters mehr als einen Punkt enthält. Für derartige Zellen wird der Zonenwert durch den Punkt mit dem niedrigsten ObjectID-Feld (z. B. OID oder FID) bestimmt.

  • 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.

  • Das Zonenfeld (zone_field in Python) muss eine ganze Zahl (Datentyp "Integer") oder einen Text (Datentyp "Text") aufweisen.

    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).

  • Die optionale Diagrammausgabe, die in der ArcGIS for Desktop-Version dieses Werkzeugs erstellt werden konnte, ist in ArcGIS Pro nicht verfügbar. Sie können jedoch mithilfe anderer Diagrammsoftware ein Diagramm aus der Ausgabetabelle erstellen.

  • Weitere Informationen zur Geoverarbeitung von Umgebungen mit diesem Werkzeug finden Sie unter Analyseumgebungen und Spatial Analyst.

Syntax

ZonalHistogram (in_zone_data, zone_field, in_value_raster, out_table)
ParameterErläuterungDatentyp
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 kann sich dabei um ein Ganzzahl- oder ein Zeichenfolgefeld des Zonen-Datasets handeln.

Field
in_value_raster

Die Rasterwerte zur Erstellung der Histogramme.

Raster Layer
out_table

Die Ausgabetabellendatei.

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 Ausdehnung angegeben wird, erfolgt die Ausgabe in einer INFO-Tabelle.

Table

Codebeispiel

ZonalHistogram – Beispiel 1 (Python-Fenster)

In diesem Beispiel wird eine .dbf-Tabelle für das zonale Histogramm erstellt.

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"

outZonHisto = ZonalHistogram("zoneras", "zonfield", "valueras", "znhist_tbl.dbf")
ZonalHistogram – Beispiel 2 (eigenständiges Skript)

In diesem Beispiel wird eine .dbf-Tabelle für das zonale Histogramm erstellt.

# Name: ZonalHistogram_Ex_02.py
# Description: Creates a zonal histogram output table
#              showing the amount of value cells 
#              for each unique input zone.
# 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 = "zonras"
zoneField = "zonfield"
inValueRaster = "valueras" 
outTable = "C:/sapyexamples/output/zonehist_tbl.dbf" 

# Execute ZonalHistogram
ZonalHistogram(inZoneData, zoneField, inValueRaster, outTable)

Lizenzinformationen

  • ArcGIS Desktop Basic: Erfordert Spatial Analyst
  • ArcGIS Desktop Standard: Erfordert Spatial Analyst
  • ArcGIS Desktop Advanced: Erfordert Spatial Analyst

Verwandte Themen