Mit der Spatial Analyst-Lizenz verfügbar.
Zusammenfassung
Erstellt eine Tabelle und ein Diagramm mit Höhenangaben und entsprechenden Speicherkapazitäten für ein Eingabe-Oberflächen-Raster. Mit dem Werkzeug werden die Oberfläche und das Gesamtvolumen der zugrunde liegenden Region bei einer Reihe von Höheninkrementen berechnet.
Verwendung
Mit dem Werkzeug wird eine Tabelle der Oberfläche und des Gesamtvolumens bei einer Reihe von Höheninkrementen erstellt. Die Tabelle enthält einen Datensatz für jedes Höheninkrement für jede Zone.
Die Ausgabetabelle weist das folgende Schema auf:
- Die Felder lauten ELEVATION, AREA und VOLUME.
- Die Felder für Fläche und Volumen enthalten die Berechnungen der Speicherkapazität bei jedem Höheninkrement.
- Die Felder für Höhe und Volumen werden in Z-Einheiten berechnet. Das Flächenfeld wird in XY-Einheiten des Eingabe-Oberflächen-Rasters berechnet.
- Wenn keine Zonen angegeben werden, wird das Feld ZONE_CODE mit einem Wert von 1 für alle Datensätze hinzugefügt, die die Analyseausdehnung als einzige Zone enthalten.
- Wenn Zonen angegeben werden, wird ein Feld basierend auf dem Parameterwert Zonenfeld (zone_field in Python) hinzugefügt. Für ein Zonenfeld mit ganzen Zahlen wird ein Feld mit demselben Namen in der Ausgabetabelle hinzugefügt. Für ein Zonenfeld mit Zeichenfolgen wird ein Feld mit demselben Namen in der Ausgabetabelle und das zusätzliche Feld ZONE_CODE hinzugefügt.
Es werden optional zwei Diagramme erstellt, um Höhenflächen- und Höhenvolumenkurven darzustellen. Die Diagramme werden zusammen mit der Ausgabetabelle zum Bereich Inhalt hinzugefügt. Die Namenskonvention, die für den Diagrammnamen verwendet wird, lautet <out_chart>-Höhenflächenkurve und <out_chart>-Höhenvolumenkurve, wobei <out_chart> mit dem Namen ersetzt wird, der im Parameter Ausgabe-Diagrammname (out_chart in Python) angegeben wird. Wenn ein Diagramm mit mehreren Zonen erstellt wird, repräsentiert jede Linie im Diagramm eine Zone. Verwenden Sie die Legende, um die Linien im Diagramm ein- oder auszuschalten. Weitere Informationen zu Details bei der Arbeit mit Diagrammen in ArcGIS Pro finden Sie unter Kurzer Überblick über Diagramme. Die Diagramme können nur in ArcGIS Pro erstellt werden; sie werden nicht von einem eigenständigen Skript unterstützt.
Verwenden Sie den Parameter Analysetyp (analysis_type in Python), um die Oberfläche, die Volumenberechnung oder beides auszuwählen. Auf diese Weise wird das Schema für Tabellen und Diagramme festgelegt. Wenn beispielsweise die Option Fläche (AREA in Python) ausgewählt wird, wird nur ein Flächenfeld in der Ausgabetabelle erstellt und das Volumenfeld wird ausgelassen. Ebenso wird nur ein Diagramm für die Höhenflächenkurve erstellt.
Wenn keine Zonen angegeben werden, wird die Speicherkapazität berechnet, indem die Analyseausdehnung als einzige Zone verwendet wird. Geben Sie einen optionalen Parameterwert für Eingabe-Raster- oder -Feature-Zonen-Daten (in_zone_data in Python) an, der die Zonen repräsentiert, in denen Speicherkapazitäten berechnet werden müssen. Eine Zone kann beispielsweise ein Reservoir oder ein Rückhaltebecken sein. Das Werkzeug unterstützt Berechnungen in mehreren Zonen, und Speicherkapazitäten werden unabhängig in jeder Zone basierend auf einem Zonenfeld berechnet.
Die Höheninkremente, für die die Speicherkapazitäten berechnet werden, basieren auf den Parameterwerten Mindesthöhe (min_elevation in Python), Maximale Höhe (max_elevation in Python), Inkrementtyp (increment_type in Python) und Inkrement (increment in Python).
Die standardmäßigen Parameterwerte Mindesthöhe und Maximale Höhe werden wie folgt bestimmt:
- Das Werkzeug verwendet die minimalen und maximalen Zonenwerte aus dem Eingabe-Oberflächen-Raster als Standardwerte. Diese Werte können von Zone zu Zone variieren – je nach den minimalen und maximalen Zonenwerten aus dem Eingabe-Oberflächen-Raster in diesen Zonen.
- Wenn Sie einen Parameterwert für Mindesthöhe oder Maximale Höhe angeben, verwendet das Werkzeug denselben Wert für minimale und maximale Inkremente in allen Zonen. In diesem Fall werden, wenn ein Subset an Höheninkrementen kleiner als das Zonenminimum ist, die Fläche und das Volumen als null berechnet. Wenn sie größer sind als das Zonenmaximum, werden Flächen und Volumen für diese Inkremente nicht berechnet und werden entsprechend dem Tabellenformat als NULL oder 0 angezeigt.
Geben Sie den Parameter Z-Einheit (z_unit in Python) an, um die vertikalen Einheiten des Eingabe-Oberflächen-Rasters anzuzeigen. Wenn für das Eingabe-Oberflächen-Raster ein vertikales Koordinatensystem angegeben wurde, werden diese Einheiten als standardmäßige Z-Einheit verwendet. Wenn keine Z-Einheit angegeben wird und das Eingabe-Oberflächen-Raster kein vertikales Koordinatensystem aufweist, ist "Meter" die standardmäßige Z-Einheit. Wenn sich die XY-Einheiten von der Z-Einheit unterscheiden, werden die XY-Einheiten so konvertiert, dass sie der Z-Einheit entsprechen, wenn Volumen berechnet werden.
Dieses Werkzeug nutzt standardmäßig Mehrkernprozessoren. Maximal können vier Kerne genutzt werden.
Wenn weniger Kerne genutzt werden sollen, verwenden Sie die Umgebungseinstellung Faktor für parallele Verarbeitung.
Syntax
StorageCapacity(in_surface_raster, out_table, in_zone_data, {zone_field}, {analysis_type}, {min_elevation}, {max_elevation}, {increment_type}, {increment}, {z_unit}, {out_chart})
Parameter | Erklärung | Datentyp |
in_surface_raster | Das Eingabe-Raster, das eine kontinuierliche Oberfläche darstellt. | Raster Layer |
out_table | Die Ausgabetabelle, die für jede Zone die Oberfläche und das Gesamtvolumen für jedes Inkrement in der Höhe enthält. | Table |
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 (optional) | Das Feld, das die Werte enthält, die die einzelnen Zonen definieren. Es kann sich dabei um ein Ganzzahl- oder ein Zeichenfolgefeld des Zonen-Datasets handeln. | Field |
analysis_type (optional) | Gibt den Analysetyp an.
| String |
min_elevation (optional) | Die Mindesthöhe, für die Speicherkapazitäten beurteilt werden. Standardmäßig verwendet das Werkzeug den minimalen Oberflächen-Rasterwert in jeder Zone als Mindesthöhe für diese Zone. Wird ein Wert angegeben, wird er als Mindesthöhe in allen Zonen verwendet. | Double |
max_elevation (optional) | Die maximale Höhe, für die Speicherkapazitäten beurteilt werden. Standardmäßig verwendet das Werkzeug den maximalen Oberflächen-Rasterwert in jeder Zone als maximale Höhe für diese Zone. Wird ein Wert angegeben, wird er als maximale Höhe in allen Zonen verwendet. | Double |
increment_type (optional) | Gibt den zu verwendenden Inkrementtyp an, wenn Höheninkremente zwischen Mindesthöhen und maximalen Höhen berechnet werden.
| String |
increment (optional) | Ein Inkrementwert, der die Anzahl der Inkremente oder die Differenz in der Höhe zwischen Inkrementen darstellt. Der Wert wird basierend auf dem Inkrementtyp-Parameterwert festgelegt. | Double |
z_unit (optional) | Die lineare Einheit vertikaler Z-Werte.
| String |
out_chart (optional) | Der Name des anzuzeigenden Ausgabediagramms. | Chart |
Codebeispiel
Verwenden Sie das Werkzeug StorageCapacity, um für jede Zone in einem Zonen-Feature eine Tabelle mit Oberflächen und Gesamtvolumen auf zehn Höheninkrementen in einem Eingabe-Oberflächen-Raster zu erstellen.
import arcpy
from arcpy.sa import *
arcpy.env.workspace = "C:/sapyexamples/data"
arcpy.sa.StorageCapacity("in_surface.tif", "out_table", "in_zones", "zone_id")
Verwenden Sie das Werkzeug StorageCapacity, um für jede Zone in einem Zonen-Feature eine Tabelle mit Oberflächen und Gesamtvolumen auf zehn Höheninkrementen in einem Eingabe-Oberflächen-Raster zu erstellen.
# Name: StorageCapacity_Standalone.py
# Description:
# Requirements: Spatial Analyst Extension
# Import system modules
import arcpy
from arcpy.sa import *
# Set the analysis environments
arcpy.CheckOutExtension("Spatial")
arcpy.env.workspace = "C:/arcpyExamples/data"
# Set local variables
in_surface_raster = "in_surface.tif"
out_table = "fgdb.gdb\out_table"
in_zones = "fgdb.gdb\in_zones"
zone_field = "zone_id"
# Execute StorageCapacity tool
arcpy.sa.StorageCapacity(in_surface_raster, out_table, in_zones, zone_field)
Umgebungen
Lizenzinformationen
- Basic: Erfordert Spatial Analyst
- Standard: Erfordert Spatial Analyst
- Advanced: Erfordert Spatial Analyst