Multidimensionalen Raster-Layer erstellen (Multidimension)

Zusammenfassung

Erstellt einen Raster-Layer aus einem multidimensionalen Raster-Dataset oder einem multidimensionalen Raster-Layer, indem Daten entlang definierter Variablen und Dimensionen aufgeteilt werden.

Verwendung

  • Mit diesem Werkzeug wird ein multidimensionaler Raster-Layer aus einem multidimensionalen Raster- oder Mosaik-Dataset durch Extrahieren einer Teilmenge von Variablen erstellt. Beispiel: Sie verfügen über ein Mosaik-Dataset, das die monatlichen Niederschlagsdaten von 30 Jahren enthält, und Sie möchten Daten für den Januar der einzelnen Jahre extrahieren, um zu ermitteln, wie sich der Niederschlag in diesem Monat im Lauf der Jahre verändert hat.

  • Die unterstützten multidimensionalen Raster-Datasets sind netCDF, GRIB, HDF und Esri CRF. Multidimensionale Mosaik-Datasets werden auch unterstützt.

  • Dieses Werkzeug erstellt einen temporären Layer, den Sie auf einem Datenträger speichern müssen, wenn Sie ihn beibehalten möchten.

  • Verwenden Sie den Parameter Bemaßungsdefinition, um Dimensionen über ein Intervall, einen Wert oder einen Wertebereich aufzuteilen. Beispiel: Ihnen stehen für 10 Jahre Daten zum Salzgehalt des Meerwassers, die monatlich alle 2 Meter bis zu einer Tiefe von 500 Metern erfasst wurden, zur Verfügung. In diesem Fall können Sie die verschiedenen Optionen zur Bemaßungsdefinition für die folgenden Szenarien verwenden:

    • Extrahieren der Daten zum Salzgehalt für den Monat Januar über den Zeitraum von 10 Jahren. Wählen Sie Durch Werte aus. Legen Sie für Bemaßung den Wert StdTime und für Werte die Option Januar fest.
    • Aufteilen der Daten zum Salzgehalt für den Tiefenbereich 0 bis 150 Meter. Wählen Sie Nach Bereichen aus. Legen Sie für Dimension den Wert StdZ, für Minimalwert den Wert -150 und für Maximalwert den Wert 0 fest.
    • Extrahieren der Daten zum Salzgehalt für die ersten 10 Tage des Monats Januar über einen Zeitraum von 10 Jahren. Wählen Sie Nach Iteration aus. Legen Sie für Dimension den Wert StdTime, für Beginn der ersten Iteration und Ende der ersten Iteration den entsprechenden Beginn und das Ende des Iterationszeitraums und für Schritt den Wert 1 fest, und geben Sie unter Einheit die Option Jahre an.

  • Um einen nicht-multidimensionalen Layer zu erstellen, der Daten aus einem einzelnen Ausschnitt des multidimensionalen Rasters enthält, wählen Sie für den Parameter Dimensionsdefinition die Einstellung Nach Werten, wählen Sie einen einzelnen Dimensionswert aus, und aktivieren Sie den Parameter Ohne Dimensionen.

Syntax

MakeMultidimensionalRasterLayer(in_multidimensional_raster, out_multidimensional_raster_layer, {variables}, {dimension_def}, {dimension_ranges}, {dimension_values}, {dimension}, {start_of_first_iteration}, {end_of_first_iteration}, {iteration_step}, {iteration_unit}, {template}, {dimensionless})
ParameterErklärungDatentyp
in_multidimensional_raster

Das als Eingabe verwendete multidimensionale Raster-Dataset.

Als Eingaben werden netCDF-, GRIB-, HDF- oder CRF-Dateien, ein multidimensionales Mosaik-Dataset, ein multidimensionaler Image-Service, eine OPeNDAP-URL oder ein multidimensionaler Raster-Layer unterstützt.

Raster Dataset; Raster Layer; Mosaic Dataset; Mosaic Layer; Image Service; File
out_multidimensional_raster_layer

Der als Ausgabe verwendete multidimensionale Raster-Layer.

Raster Layer
variables
[variables,...]
(optional)

Die Variablen, die in den multidimensionalen Ausgabe-Raster-Layer aufgenommen werden. Wenn keine Variable angegeben ist, wird die erste Variable verwendet.

String
dimension_def
(optional)

Gibt die Methode an, die zum Aufteilen der Dimension verwendet wird.

  • ALLFür jede Dimension wird der volle Bereich verwendet. Dies ist die Standardeinstellung.
  • BY_RANGESDie Dimension wird anhand eines Bereichs oder einer Liste von Bereichen aufgeteilt.
  • BY_ITERATIONDie Dimension wird über eine angegebene Intervallgröße aufgeteilt.
  • BY_VALUEDie Dimension wird anhand einer Liste von Dimensionswerten aufgeteilt.
String
dimension_ranges
[dimension_ranges,...]
(optional)

Der Bereich oder die Liste der Bereiche für die angegebene Dimension.

Dadurch werden die Daten basierend auf dem Dimensionsnamen und der minimalen und maximalen Werte für den Bereich aufgeteilt. Dieser Parameter ist erforderlich, wenn der Parameter dimension_def auf BY_RANGES gesetzt ist

Value Table
dimension_values
[dimension_values,...]
(optional)

Eine Liste von Werten für die angegebene Dimension. Dieser Parameter ist erforderlich, wenn der Parameter dimension_def auf BY_VALUE gesetzt ist

Value Table
dimension
(optional)

Die Dimension, an der entlang die Variablen aufgeteilt werden. Dieser Parameter ist erforderlich, wenn der Parameter dimension_def auf BY_ITERATION gesetzt ist

String
start_of_first_iteration
(optional)

Der Beginn des ersten Intervalls. Die Iteration durch das Dataset erfolgt anhand dieses Intervalls. Dieser Parameter ist erforderlich, wenn der Parameter dimension_def auf BY_ITERATION gesetzt ist

String
end_of_first_iteration
(optional)

Das Ende des ersten Intervalls. Die Iteration durch das Dataset erfolgt anhand dieses Intervalls. Dieser Parameter ist erforderlich, wenn der Parameter dimension_def auf BY_ITERATION gesetzt ist

String
iteration_step
(optional)

Die Häufigkeit, in der die Daten aufgeteilt werden. Dieser Parameter ist erforderlich, wenn der Parameter dimension_def auf BY_ITERATION gesetzt ist

Double
iteration_unit
(optional)

Gibt die Iterationseinheit an. Dieser Parameter ist erforderlich, wenn für den Parameter dimension_def der Wert BY_ITERATION festgelegt wurde und für den Parameter dimension die Option StdTime.

  • HOURSDie angegebene Zeiteinheit lautet "Stunden".
  • DAYSDie angegebene Zeiteinheit lautet "Tage".
  • WEEKSDie angegebene Zeiteinheit lautet "Wochen".
  • MONTHSDie angegebene Zeiteinheit lautet "Monate".
  • YEARSDie angegebene Zeiteinheit lautet "Jahre".
String
template
(optional)

Die Ausdehnung (umgebendes Feld) des Layers. Wählen Sie unter Ausdehnung die entsprechende Option für den Layer aus.

  • Standard: Exportiert das Raster-Dataset mithilfe der Angaben zum Raumbezug des Raster-Datasets.
  • Aktuelle Anzeigeausdehnung: Die Ausdehnung der aktuellen Anzeige wird verwendet.
  • Wie unten angegeben: Geben die Koordinaten des kleinsten umgebenden Rechtecks ein. Geben Sie die Ausdehnung für Links, Rechts, Oben und Unten ein.
  • Durchsuchen: Verwenden Sie die Schaltfläche Durchsuchen, um zum Speicherort der Feature-Class zu navigieren, die Sie als Ausdehnung verwenden möchten.
  • <Layer>: Wählen Sie einen der aufgeführten Layer zur Verwendung als Ausdehnung aus. Wie bei der Option Aktuelle Anzeigeausdehnung wird die Ausdehnung des Layers gelesen und gespeichert.
Extent
dimensionless
(optional)

Gibt an, ob der Layer Dimensionswerte enthält. Dieser Parameter ist nur aktiviert, wenn ein einzelner Ausschnitt zur Erstellung eines Layers gewählt wird.

  • NO_DIMENSIONS Der Layer enthält keine Dimensionswerte.
  • DIMENSIONSDer Layer enthält Dimensionswerte. Dies ist die Standardeinstellung.
Boolean

Codebeispiel

MakeMultidimensionalRasterLayer – Beispiel 1 (Python-Fenster)

Extrahieren Sie eine Teilmenge von Variablen aus einem multidimensionalen Raster mithilfe der BY_RANGES-Methode.

# Import system modules
import arcpy

# Execute
MakeMultidim = MakeMultidimensionalRasterLayer("C:\data\Ocean_Data.crf", "salinity", "BY_RANGES", "StdZ -500 -100", "120.084279939743 0.914964278021376 139.524470909773 21.1231086159414")


# Save Output
MakeMultidim.save("C:\data\Salinity_MultidimLayer.crf")
MakeMultidimensionalRasterLayer – Beispiel 2 (eigenständiges Skript)

Extrahieren Sie die Variable für die Wassertemperatur aus einem multidimensionalen Raster für bestimmte Tiefewerte mithilfe der BY_VALUE-Methode.

# Import system modules
import arcpy

# Define input parameters
in_multidimensional_raster = r"C:\data\MD_Ocean_data.crf"
out_multidimensional_raster_layer = r"C:\data\Temp_slice.crf"
variables = "water_temp"
dimension_def = "BY_VALUE"
dimension_values = "StdZ -50;StdZ -100"
template = "120.084279939743 0.914964278021376 139.524470909773 21.1231086159414"

#Execute

arcpy.md.MakeMultidimensionalRasterLayer(in_multidimensional_raster, out_multidimensional_raster_layer, variables, dimension_def, dimension_values, template)
MakeMultidimensionalRasterLayer – Beispiel 3 (eigenständiges Skript)

Extrahieren Sie die Variable für Salzgehalt aus einem multidimensionalen Raster mithilfe BY_ITERATION-Methode.

# Import system modules
import arcpy
 
# Set local variables
in_multidimensional_raster = r"C:\data\MD_Ocean_data.crf"
out_multidimensional_raster_layer =  r"C:\data\salinity_slice.crf"
variables = "salinity"
dimension_def = "BY_ITERATION"
dimension = "StdTime"
start_of_first_iteration = "2009-01-01"
end_of_first_iteration = "2009-01-10"
iteration_step = "1"
iteration_unit = "YEARS"
template = "120.084279939743 0.914964278021376 139.524470909773 21.1231086159414"
 
#Execute
 
arcpy.md.MakeMultidimensionalRasterLayer(in_multidimensional_raster, out_multidimensional_raster_layer, variables, dimension_def, dimension, start_of_first_iteration, end_of_first_iteration, iteration_step, iteration_unit, template)

Lizenzinformationen

  • Basic: Ja
  • Standard: Ja
  • Advanced: Ja

Verwandte Themen