Mehrfache Werte in Punkte extrahieren (Spatial Analyst)

Mit der Spatial Analyst-Lizenz verfügbar.

Zusammenfassung

Extrahiert Zellenwerte an Positionen, die in einer Point-Feature-Class angeben sind, aus einem oder mehreren Rastern und zeichnet die Werte in der Attributtabelle der Point-Feature-Class auf.

Verwendung

  • Dieses Werkzeug ändert die Eingabe-Punkt-Features und ggf. auch die interne Feature-ID (ObjectID, FID oder OID). Es empfiehlt sich, vor Durchführung der Analyse ein eindeutiges ID-Feld in der Attributtabelle anzulegen.

  • Aus allen Eingabe-Rastern werden an jeder Position Zellenwerte extrahiert. An die Eingabe-Point-Feature-Class wird ein neues Feld angehängt, das die Zellenwerte für die einzelnen Eingabe-Raster enthält.

  • Zusätzliche Attribute aus der Eingabe-Raster-Tabelle, sofern vorhanden, werden nicht an die Eingabe-Punkt-Features angehängt.

  • Unter Berücksichtigung der Analyseumgebung wird für die Eingabe-Raster kein Resampling durchgeführt. Stattdessen werden die Zellenwerte in der ursprünglichen Auflösung und mit demselben Raumbezug extrahiert. Sie werden von den projizierenden Eingabepositionen aus allen Eingabe-Rastern zum Raumbezug des Rasters, aus dem die Werte extrahiert werden, extrahiert.

    Die Analyseumgebung wird jedoch auf die Eingabepositionen angewendet.

  • Positionen, mit denen Werte aus NoData-Zellen im Eingabe-Raster extrahiert werden, erhalten in der Ausgabetabelle einen <NULL>-Wert. Da für Shapefiles NULL-Felder nicht unterstützt werden, werden NoData-Zellen stattdessen mit dem Wert -9999 in der Tabelle dargestellt.

  • Beim Shapefile-Format ist die Länge eines Feldnamens auf maximal 10 Zeichen beschränkt. Folglich werden die Namen von Feldern, die an die Attributtabelle eines Eingabe-Shapefiles angehängt werden, standardmäßig gekürzt und eindeutig gemacht. Dies macht es möglicherweise schwierig, zwischen den Feldern zu unterscheiden, besonders wenn die Namen lang oder sehr ähnlich sind. In diesem Fall sollten Sie das Eingabe-Shapefile in eine File-Geodatabase kopieren und für die Analyse die Feature-Class verwenden.

  • Wenn die Eingabe-Punkt-Features (in_point_features in Python) unter Verwendung eines XY-Ereignis-Layers definiert werden, wird die zugrunde liegende Ereignistabelle direkt aktualisiert. Wenn die zugrunde liegende Tabelle schreibgeschützt ist, tritt beim Ausführen des Werkzeugs ein Fehler auf.

  • Das Werkzeug kann nicht mit Multipoint-Features ausgeführt werden. Für die Analyse mit Multipoint-Features müssen Sie diese in Singlepoint-Features konvertieren, bevor Sie sie im Extraktionswerkzeug verwenden können. Weitere Informationen finden Sie unter Verarbeiten von Multipoint-Daten.

  • Jede beliebige Kombination von Rastern (Einzelband- oder Multiband-Raster) kann als Eingabe-Raster (in_rasters in Python) angegeben werden.

  • Wenn ein Multiband-Raster als eines der Eingabe-Raster (in_rasters in Python) angegeben wird, werden alle Bänder in dieser Eingabe verwendet.

    Wenn eine Auswahl von Bändern aus einem Eingabe-Multiband-Raster verarbeitet werden soll, erstellen Sie zunächst mit dem Werkzeug Bänder zusammensetzen ein neues Raster-Dataset, das aus den betreffenden Bändern besteht. Verwenden Sie das Ergebnis in der Liste der Eingabe-Raster.

  • 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 Namen von Ausgabefeldern werden standardmäßig aus dem Namen des Eingabe-Rasters erstellt. Andernfalls können Sie einen eindeutigen Namen für jedes Feld angeben, in dem Rasterwerte gespeichert werden sollen.

  • Die Interpolationsoption bestimmt, wie die Werte aus dem Raster abgerufen werden. Standardmäßig wird der genaue Zellenwert an den Eingabepositionen extrahiert. Aktivieren Sie zum Extrahieren interpolierter Werte unter Verwendung der bilinearen Methode die Option Bilineare Interpolation von Werten an Punktpositionen. In Python wählen Sie für den Parameter bilinear_interpolate_values BILINEAR.

  • Wenn in der Umgebungseinstellung "Maske" ein Feature angegeben wurde, wird mit der minimalen Zellengröße der Eingabe-Raster ein internes Raster erstellt. Während der Extraktion wird für das interne Masken-Raster ein Resampling auf die Zellengröße jedes Eingabe-Rasters durchgeführt.

  • Weitere Informationen zur Geoverarbeitung von Umgebungen mit diesem Werkzeug finden Sie unter Analyseumgebungen und Spatial Analyst.

Syntax

ExtractMultiValuesToPoints(in_point_features, in_rasters, {bilinear_interpolate_values})
ParameterErklärungDatentyp
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.

Extract Values
bilinear_interpolate_values
(optional)

Gibt an, ob die Interpolation verwendet wird.

  • NONE Es wird keine Interpolation angewendet; der Wert des Zellenmittelpunktes wird verwendet. Dies ist die Standardeinstellung.
  • BILINEAR Der Wert der Zelle wird mit bilinearer Interpolation von den benachbarten Zellen mit gültigen Werten berechnet. NoData-Werte werden in der Interpolation ignoriert, außer wenn alle benachbarten Zellen NoData sind.
Boolean

Abgeleitete Ausgabe

NameErklärungDatentyp
out_point_features

Die aktualisierten Punkt-Features.

Feature-Class

Codebeispiel

ExtractMultiValuesToPoints – Beispiel 1 (Python-Fenster)

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")
ExtractMultiValuesToPoints – Beispiel 2 (eigenständiges Skript)

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"]]

# Execute ExtractValuesToPoints
ExtractMultiValuesToPoints(inPointFeatures, inRasterList, "BILINEAR")

Lizenzinformationen

  • Basic: Erfordert Spatial Analyst
  • Standard: Erfordert Spatial Analyst
  • Advanced: Erfordert Spatial Analyst

Verwandte Themen