Mehrfache Werte in Punkte extrahieren (Spatial Analyst)
Zusammenfassung
Extrahiert Zellenwerte an in einer Point-Feature-Class angegebenen Positionen aus einem oder mehreren Rastern und zeichnet die Werte in der Attributtabelle der Point-Feature-Class auf.
Verwendung
-
Jede beliebige Kombination von Rastern (Einzelband- oder Multiband-Raster) kann als Eingabe angegeben werden.
-
Für jedes Eingabe-Raster wird ein Zellenwert extrahiert, und ein neues Feld, das die Zellenwerte für jedes Eingabe-Raster enthält, wird an die Eingabe-Point-Feature-Class angefügt.
-
Ausgabe-Feldnamen werden standardmäßig aus dem Namen des Eingabe-Rasters erstellt. Andernfalls können Sie einen eindeutigen Namen für jedes Feld angeben, in dem Raster-Werte gespeichert werden sollen.
-
Wenn die Eingabe ein Multiband-Raster ist, wird für alle Bänder ein Feld hinzugefügt. Dabei wird dem Namen des Ausgabefeldes das Präfix "b1_, b2_, …bn" hinzugefügt, das die Bandnummer angibt.
-
Die Interpolationsoption bestimmt, wie die Werte aus dem Raster abgerufen werden. Standardmäßig wird der Wert im Mittelpunkt der berechneten Zelle verwendet. Die Interpolationsoption interpoliert einen Wert für den Zellenmittelpunkt mithilfe bilinearer Interpolation.
-
Shapefile-Formate weisen eine Längenbeschränkung von maximal 10 Zeichen für Felder auf. An das Eingabe-Shapefile angefügte Ausgabefelder werden standardmäßig abgeschnitten und eindeutig gemacht. Dies macht es möglicherweise schwer, zwischen Eingabe-Rastern zu unterscheiden, wenn die Namen lang oder sehr ähnlich sind. In diesem Fall sollten Sie die Features am besten in eine File-Geodatabase konvertieren.
-
NoData-Zellen im Wert-Raster erhalten einen NULL-Wert. Für Shapefiles wird NULL nicht unterstützt, und sie erhalten den Wert 0.
Multipoint-Datasets werden nicht als Eingabe unterstützt.
Mit diesem Werkzeug werden die Eingabedaten geändert. Weitere Informationen und Strategien zur Vermeidung unerwünschter Datenänderungen finden Sie unter Werkzeuge ohne Ausgabe.
Syntax
Parameter | Erläuterung | Datentyp |
in_point_features |
Die Eingabe-Punkt-Features, zu denen Sie Raster-Werte hinzufügen möchten. | Feature Layer |
in_rasters [[Raster, {Output Field Name}],...] |
Die Werte des Eingabe-Rasters (bzw. der Eingabe-Raster), die auf der Grundlage der Eingabe-Punkt-Feature-Position extrahiert werden sollen. Optional können Sie den Namen für das Feld angeben, in dem der Raster-Wert gespeichert werden soll. Standardmäßig wird ein eindeutiger Feldname auf der Grundlage des Namens des Eingabe-Raster-Datasets erstellt. | Value Table |
bilinear_interpolate_values (optional) |
Gibt an, ob die Interpolation verwendet wird.
| Boolean |
Codebeispiel
Extrahieren der Zellenwerte aus mehreren Rastern in Attribute in einer Point-Shapefile-Feature-Class.
import arcpy
from arcpy.sa import *
from arcpy import env
env.workspace = "c:/sapyexamples/data"
ExtractMultiValuesToPoints("observers.shp", [["elevation", "ELEV"],
["costraster", "COST"], ["flowdir", "DIR"]], "NONE")
Extrahieren der Zellenwerte aus mehreren Rastern mittels Interpolation in Attribute in einer Point-Shapefile-Feature-Class.
# Name: ExtractMultiValuesToPoints_Ex_02.py
# Description: Extracts the cells of multiple rasters as attributes in
# an output point feature class. This example takes a multiband IMG
# and two GRID files as input.
# 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
inPointFeatures = "poi.shp"
inRasterList = [["doqq.img", "doqqval"], ["redstd", "focalstd"],
["redmin", "focalmin"]]
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute ExtractValuesToPoints
ExtractMultiValuesToPoints(inPointFeatures, inRasterList, "BILINEAR")