Rank (Spatial Analyst)
Zusammenfassung
Die Werte aus der Gruppe der Eingabe-Raster werden auf Zellenbasis geordnet. Der Wert des Rangstufen-Eingabe-Rasters bestimmt, welcher dieser Werte ausgegeben wird.
Bild
Verwendung
-
Die Reihenfolge ist in der Liste der Eingabe-Raster nicht von Bedeutung. Das Rangstufen-Eingabe-Raster muss jedoch vorausgehen.
-
In der Liste der Eingabe-Raster kann eine beliebige Anzahl von Rastern angegeben werden.
-
Wenn eine Zellenposition für eines der Eingabe-Raster den Wert "NoData" enthält, wird dieser Position auch in der Ausgabe der Wert "NoData" zugewiesen.
-
Wenn alle Eingabewerte für eine Zellenposition identisch sind (unabhängig von der angegebenen Rangstufe), wird dieser Wert als der Ausgabe für diese Zellenposition verwendet.
-
Wenn der Wert des Rangstufen-Rasters größer als die Anzahl der Eingabe-Raster ist, wird jeder Zellenposition in der Ausgabe der Wert "NoData" zugewiesen.
-
Wenn es sich bei einem der Eingabe-Raster um ein Gleitkomma-Raster handelt, enthält auch die Ausgabe Gleitkommawerte. Andernfalls enthält sie Ganzzahlwerte.
Syntax
Parameter | Erläuterung | Datentyp |
in_rank_raster_or_constant |
Das Eingabe-Raster, das die Rangposition definiert, die zurückgegeben werden soll. Eine Zahl kann als Eingabe verwendet werden, Sie müssen jedoch zunächst in der Umgebung die Zellengröße und die Ausdehnung festlegen. | Raster Layer | Constant |
in_rasters [in_raster,...] |
Die Liste der Eingabe-Raster. Die Eingabe definiert die Argumentliste für die Ermittlung des Wertes der Rangstufe, die durch das erste Argument für jede Zellenposition definiert ist. | Raster Layer |
Rückgabewert
Name | Erläuterung | Datentyp |
out_raster |
Das Ausgabe-Raster. Für jede Zelle im Ausgabe-Raster werden die Werte in den Eingabe-Rastern vom niedrigsten zum höchsten sortiert, und der Wert des Eingabe-Rangstufen-Rasters wird verwendet, um auszuwählen, welcher davon der Ausgabewert sein soll. | Raster |
Codebeispiel
In diesem Beispiel wird eine Rank-Operation für mehrere Eingabe-Grid-Raster ausgeführt, und das Ergebnis wird als TIFF-Raster ausgegeben.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outRank = Rank("cost", ["degs", "negs", "fourgrd"])
outRank.save("C:/sapyexamples/output/outrank.tif")
In diesem Beispiel wird eine Rank-Operation für mehrere Eingabe-Grid-Raster ausgeführt, und das Ergebnis wird als Grid-Raster ausgegeben.
# Name: Rank_Ex_02.py
# Description: Returns the value of a set of rasters based on
# a rank level specified by another raster
# 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
inRankRaster = "cost"
inRaster01 = "degs"
inRaster02 = "negs"
inRaster03 = "fourgrd"
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute Rank
outRank = Rank(inRankRaster, [inRaster01, inRaster02, inRaster03])
# Save the output
outRank.save("C:/sapyexamples/output/outrank")