Mit der Image Analyst-Lizenz verfügbar.
Zusammenfassung
Schätzt den Trend für jedes Pixel entlang einer Dimension für eine oder mehrere Variablen in einem multidimensionalen Raster.
Verwendung
Ein Anwendungsbeispiel für dieses Werkzeug: Sie haben monatliche Meerestemperaturdaten von 40 Jahren und möchten für jedes Pixel eine Trendlinie anpassen, um zu sehen, wo und wie sich die Temperatur im Laufe der Zeit 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 generiert ein multidimensionales Raster-Dataset im Cloud-Raster-Format (CRF). Aktuell werden keine anderen Ausgabeformate unterstützt.
Standardmäßig wird die multidimensionale Raster-Ausgabe mit dem Komprimierungstyp LZ77 komprimiert. Es wird jedoch empfohlen, stattdessen den Komprimierungstyp LERC festzulegen und den Maximalfehler entsprechend Ihren Daten anzupassen. Wenn Sie zum Beispiel Analyseergebnisse mit einer Genauigkeit von drei Dezimalstellen erwarten, dann sollten Sie den Wert 0,001 für diesen Maximalfehler verwenden. Dies eignet sich am besten, um unnötige Anforderungen an die Genauigkeit zu vermeiden, da andernfalls Verarbeitungszeit und Speichergröße zu sehr ansteigen würden.
Es gibt drei Möglichkeiten der Anpassung eines Trends an die Variablenwerte entlang einer Dimension: linear, harmonisch und polynomisch. Diese drei Anpassungsoptionen für Trends werden nachfolgend beschrieben.
- Linear: Die lineare Trendlinie ist eine am besten passende gerade Linie, die zur Schätzung einfacher linearer Beziehungen verwendet wird. Ein linearer Trend kennzeichnet eine gleichbleibende Veränderung nach oben oder unten. Die Formel für lineare Trendlinien lautet wie folgt:
- y = Variablenwert des Pixels
- x = Dimensionswert
- ß0 = y-Schnittpunkt
- ß1 = lineare Neigung oder Änderungsrate
ß1 > 0 weist auf einen zunehmenden Trend hin
ß1 < 0 weist auf einen abnehmenden Trend hin
- Harmonisch: Die harmonische Trendlinie ist eine sich periodisch wiederholende geschwungene Linie; mit ihr lassen sich Daten beschreiben, die einem Zyklus folgen, z. B. saisonal bedingte Temperaturänderungen. Die Formel für harmonische Trendlinien lautet wie folgt:
- y = Variablenwert des Pixels
- t = Datum nach Julianischem Kalender
- ß0 = y-Schnittpunkt
- ß1 = Veränderungsrate
- α, γ = Koeffizienten der Veränderungen innerhalb eines Jahres oder jahresübergreifend
- ω = i
- f = harmonische Frequenz
- Polynomisch: Die polynomische Trendlinie ist eine geschwungene Linie, die gut zur Darstellung von Daten mit stärkerer Fluktuation geeignet ist. In diesem Fall wird die maximale Anzahl der auftretenden Fluktuationen durch eine Polynom-Ordnung angegeben. Die Formel für polynomische Trendlinien lautet wie folgt:
- y = Variablenwert des Pixels
- x = Dimensionswert
- ß0, ß1, ß2, ß3, ... ßn = konstante Koeffizienten
- Linear: Die lineare Trendlinie ist eine am besten passende gerade Linie, die zur Schätzung einfacher linearer Beziehungen verwendet wird. Ein linearer Trend kennzeichnet eine gleichbleibende Veränderung nach oben oder unten. Die Formel für lineare Trendlinien lautet wie folgt:
Das mit diesem Werkzeug generierte Ausgabe-Trend-Raster wird als Eingabe für das Werkzeug Mit Trend-Raster vorhersagen verwendet. Die Ausgabe ist ein multidimensionales Raster, wobei jeder Ausschnitt ein Multiband-Raster darstellt und Informationen über die Trendlinie enthält. Wenn Sie den Trend für eine einzelne Variable eines Datasets analysieren, das nur eine Dimension (z. B. Zeit) enthält, enthält das Ausgabe-Dataset nur einen Ausschnitt. Wenn Sie eine einzelne Variable für ein Dataset analysieren, das mehrere Dimensionen enthält (z. B. Zeit und Tiefe), enthält jeder Ausschnitt Trendinformationen für alle Dimensionswerte entlang der Dimension, die nicht in der Analyse enthalten war.
In der linearen Trendanalyse enthält die Ausgabe Dreiband-Raster. Hierbei gilt:
- Band 1 = Neigung
- Band 2 = Schnittpunkt
- Band 3 = RMS-Fehler (Root Mean Square, quadratisches Mittel) oder Fehler um die am besten passende Linie herum
In der harmonischen Trendanalyse hängt die Anzahl an Bändern in der Ausgabe von der harmonischen Frequenz ab. Bei der Frequenz 1 ist die Ausgabe ein Fünfband-Raster. Hierbei gilt:
- Band 1 = Neigung
- Band 2 = Schnittpunkt
- Band 3 = Harmonic_sin1
- Band 4 = Harmonic_cos1
- Band 5 = RMSE
Bei der Frequenz 2 ist die Ausgabe ein Siebenband-Raster. Hierbei gilt:
- Band 1 = Neigung
- Band 2 = Schnittpunkt
- Band 3 = Harmonic_sin1
- Band 4 = Harmonic_cos1
- Band 5 = Harmonic_sin2
- Band 6 = Harmonic_cos2
- Band 7 = RMSE
In der polynomischen Trendanalyse hängt die Anzahl an Bändern in der Ausgabe von der Polynom-Ordnung ab. Bei der Polynomanpassung zweiter Ordnung entsteht ein Vierband-Raster. Hierbei gilt:
- Band 1 = Polynomial_2
- Band 2 = Polynomial_1
- Band 3 = Polynomial_0
- Band 4 = RMSE
Bei der Polynomanpassung dritter Ordnung entsteht ein Fünfband-Raster. Hierbei gilt:
- Band 1 = Polynomial_3
- Band 2 = Polynomial_2
- Band 3 = Polynomial_1
- Band 4 = Polynomial_0
- Band 5 = RMSE
Mit dem Parameter Zykluslänge für die harmonische Trendanalyse wird die Anzahl und Länge der Zyklen angegeben, die Sie für die Daten in einem Tag oder Jahr erwarten. Wenn Sie beispielsweise für Ihre Daten zwei Variationszyklen pro Jahr erwarten, beträgt die Zykluslänge 182,5 Tage bzw. 0,5 Jahre. Wenn alle drei Stunden eine Erfassung von Temperaturdaten erfolgt und pro Tag ein Variationszyklus vorliegt, beträgt die Zykluslänge einen Tag.
Mit dem Parameter Häufigkeit für die harmonische Trendanalyse wird das harmonische Modell beschrieben, das an die Daten angepasst wird. Wird die Häufigkeit auf 1 festgelegt, wird eine Kombination aus linearer Kurve und harmonischer Kurve der ersten Ordnung für die Anpassung des Modells verwendet. Beträgt die Häufigkeit 2, wird eine Kombination aus linearer Kurve, harmonischer Kurve der ersten Ordnung und harmonischer Kurve der zweiten Ordnung für die Anpassung des Modells verwendet. Beträgt die Häufigkeit 3, wird zusätzlich eine harmonische Kurve der dritten Ordnung für die Modellierung der Daten verwendet und so weiter und so fort.
Modellstatistiken zur Qualität der Übereinstimmung können als optionale Ausgabe generiert werden. Der RMS-Fehler (Root Mean Square, quadratisches Mittel), R-Squared und der Trend für den p-Wert der Neigung können im Fenster Eigenschaften des Ausgabe-Rasters im Abschnitt Statistiken berechnet und angezeigt werden. Sie können die Statistiken auch anzeigen, indem Sie das Ausgabe-Trend-Raster mit der Symbolisierung RGB symbolisieren und die Statistiken als rote, grüne und blaue Bänder angeben.
Syntax
GenerateTrendRaster(in_multidimensional_raster, dimension, {variables}, {line_type}, {frequency}, {ignore_nodata}, {cycle_length}, {cycle_unit}, {rmse}, {r2}, {slope_p_value})
Parameter | Erklärung | Datentyp |
in_multidimensional_raster | Das als Eingabe verwendete multidimensionale Raster-Dataset. | Raster Dataset; Raster Layer; Mosaic Dataset; Mosaic Layer; Image Service; File |
dimension | Die Dimension, für die anhand der in der Analyse ausgewählte(n) Variable(n) Trenddaten gewonnen werden sollen. | String |
variables [variables,...] (optional) | Die Variable oder Variablen, für die Trends berechnet werden. Wenn keine Variable angegeben ist, wird die erste Variable im multidimensionalen Raster analysiert. | String |
line_type (optional) | Gibt den Linientyp für die Anpassung an die Pixelwerte in einer Dimension an.
| String |
frequency (optional) | Die für die Trendanpassung verwendete Häufigkeit oder Polynomordnung. Ist der Trendtyp polynomisch, wird mit diesem Parameter die Polynomordnung angegeben. Ist der Trendtyp harmonisch, wird mit diesem Parameter die Anzahl der für die Anpassung des Trends zu verwendenden Modelle angegeben. Dieser Parameter ist nur in der Trendanalyse enthalten, wenn es sich bei der analysierten Dimension um Zeit handelt. Wenn für den Parameter line_type die Option HARMONIC verwendet wird, beträgt der Standardwert 1; das bedeutet, dass für die Anpassung des Modells eine harmonische Kurve erster Ordnung verwendet wird. Wenn für den Parameter line_type die Option POLYNOMIAL verwendet wird, lautet der Standardwert 2, was einem Polynom zweiter Ordnung entspricht. | Long |
ignore_nodata (optional) | Gibt an, ob NoData-Werte bei der Analyse ignoriert werden.
| Boolean |
cycle_length (optional) | Die Länge der zu modellierenden periodischen Variation. Dieser Parameter ist erforderlich, wenn line_type auf HARMONIC gesetzt ist. Der Grünanteil bei Blättern beispielsweise weist pro Jahr einen starken Variationszyklus auf, sodass die Zykluslänge 1 Jahr beträgt. Stündlich erfasste Temperaturdaten weisen pro Tag einen starken Variationszyklus auf, sodass die Zykluslänge 1 Tag beträgt. Für Daten, die eine Variation auf der Grundlage eines Jahreszyklus aufweisen, beträgt die Standardlänge 1 Jahr. | Double |
cycle_unit (optional) | Gibt die Zeiteinheit für die Länge eines harmonischen Zyklus an.
| String |
rmse (optional) | Gibt an, ob der RMS-Fehler (Root Mean Square, quadratisches Mittel) der angepassten Trendlinie berechnet wird.
| Boolean |
r2 (optional) | Gibt an, ob für die angepasste Trendlinie eine Statistik zur Qualität der Übereinstimmung von R-Squared berechnet wird.
| Boolean |
slope_p_value (optional) | Gibt an, ob die p-Wertstatistik für den Neigungskoeffizienten der Trendlinie berechnet wird.
| Boolean |
Rückgabewert
Name | Erklärung | Datentyp |
out_multidimensional_raster | Das multidimensionale Ausgabe-Raster-Dataset im Cloud Raster Format (CRF). | Raster |
Codebeispiel
In diesem Beispiel wird die polynomische Trendanpassung für Niederschlagsdaten im Zeitverlauf berechnet.
# Import system modules
import arcpy
from arcpy.ia import *
# Check out the ArcGIS Image Analyst extension license
arcpy.CheckOutExtension("ImageAnalyst")
# Execute
trendCoeffMultidim = arcpy.ia.GenerateTrendRaster("model_time_series.crf",
"StdTime", "precip", "POLYNOMIAL", 2, "DATA", None, '', "RMSE","R2", None)
# Save output
trendCoeffMultidim.save("C:/data/polynomial_trend_coefficients.crf")
In diesem Beispiel wird die lineare Trendanpassung für Temperatur und Salzgehalt im Zeitverlauf berechnet.
# Import system modules
import arcpy
from arcpy.ia import *
# Check out the ArcGIS Image Analyst extension license
arcpy.CheckOutExtension("ImageAnalyst")
# Define input parameters
inFile = "C:/Data/ClimateVariables.crf"
dimensionName = "Depth"
variables = "salinity;temp"
trend_type = "LINEAR"
frequency = None
ignore_Nodata = "DATA"
cycle_length = None
cycle_unit = ''
rmse = "RMSE"
r2 = "R2"
slopeP = "NO_SLOPEPVALUE")
# Execute - fit a linear model for salinity and temperature
trendCoeffMultidim = GenerateTrendRaster(inFile, dimensionName,
variables, trend_type, frequency, ignore_nodata, cycle_length,
cycle_unit, rmse, r2, slopeP)
# Save output
trendCoeffMultidim.save("C:/data/linear_trend_coefficients.crf")
In diesem Beispiel wird die harmonische Trendanpassung entlang einer NDVI-Zeitserie berechnet.
# Import system modules
import arcpy
from arcpy.ia import *
# Check out the ArcGIS Image Analyst extension license
arcpy.CheckOutExtension("ImageAnalyst")
# Define input parameters
inFile = "C:/data/ndvi_time_series.crf"
dimensionName = "StdTime"
variables = "ndvi"
trend_model = "HARMONIC"
harmonic_frequency = 1
ignore_Nodata = "DATA"
length_of_cycle = 1
cycle_unit = "YEARS"
rmse = "RMSE"
r_square = "NO_R2"
p_value = "NO_SLOPEPVALUE"
# Execute
trendCoeffMultidim = GenerateTrendRaster(inFile, dimensionName,
variables, trend_model, harmonic_frequency, ignore_nodata,
length_of_cycle, cycle_unit, rmse,r_square,p_value)
# Save output
trendCoeffMultidim.save("C:/data/harmonic_trend_coefficients.crf")
Umgebungen
Lizenzinformationen
- Basic: Erfordert Image Analyst
- Standard: Erfordert Image Analyst
- Advanced: Erfordert Image Analyst