Natural Neighbor (Spatial Analyst)
Zusammenfassung
Interpoliert eine Raster-Oberfläche anhand von Punkten mithilfe einer Natural Neighbor-Methode.
Weitere Informationen zur Funktionsweise von "Natural Neighbor"
Verwendung
-
Falls die Zellenmitte der Umfangszellen des Ausgabe-Rasters außerhalb der konvexen Hülle (definiert durch die Eingabepunkte) liegt, werden diesen Zellen "NoData"-Werte zugewiesen. Falls ein Eingabepunkt innerhalb dieser Umfangszellen und die Zellenmitte außerhalb der konvexen Hülle liegen, wird dieser Zelle weiterhin ein "NoData"-Wert zugewiesen.
-
Einige Eingabe-Datasets weisen mehrere Punkte mit denselben XY-Koordinaten auf. Wenn die Werte der Punkte an der gemeinsamen Position identisch sind, werden sie als Duplikate betrachtet und haben keinerlei Auswirkung auf die Ausgabe. Falls die Werte nicht identisch sind, werden sie als lagegleiche Punkte betrachtet.
Die verschiedenen Interpolationswerkzeuge verarbeiten diese Datenbedingung möglicherweise unterschiedlich. In einigen Fällen wird beispielsweise der erste lagegleiche Punkt für die Berechnung verwendet, während in anderen Fällen der letzte Punkt verwendet wird. Dies kann dazu führen, dass einige Positionen im Ausgabe-Raster andere Werte enthalten als Sie erwarten. Die Lösung besteht darin, Ihre Daten vorzubereiten, indem Sie diese lagegleichen Punkte entfernen. Das Werkzeug Ereignisse erfassen in der Toolbox "Spatial Statistics" unterstützt Sie bei der Ermittlung aller lagegleichen Punkte in Ihren Daten.
-
Die Grenze für dieses Werkzeug liegt bei etwa 15 Millionen Eingabepunkten. Wenn die Eingabe-Feature-Class eine sehr große Anzahl von Punkten enthält (mehr als 15 Millionen Punkte), erzielen Sie mit diesem Werkzeug möglicherweise kein Ergebnis.
Sie können die Beschränkung umgehen, indem Sie Ihr Untersuchungsgebiet in mehreren Abschnitte verarbeiten und die Ergebnisse mosaikartig in einem großen Raster-Dataset erstellen. Stellen Sie sicher, dass die Abschnitte sich ein wenig überlappen. Alternativ können Sie ein Terrain-Dataset zum Speichern und Visualisieren von Punkten und Oberflächen, die Milliarden von Messpunkten enthalten, verwenden.
Die Eingabedaten sollten sich in einem projizierten Koordinatensystem und nicht in einem geographischen Koordinatensystem befinden.
-
Wenn die Erweiterung "ArcGIS 3D Analyst" vorhanden ist, kann auch ein TIN-Dataset verwendet werden. Zuerst sollten Sie aus den Quelldaten ein TIN erstellen. Konvertieren Sie das sich ergebende TIN anschließend mit dem Werkzeug TIN zu Raster und mithilfe der Option "Natural Neighbors" in ein Raster. Dies bietet sich besonders an, wenn es Bruchkanten oder eine unregelmäßig geformte Datenfläche gibt.
Syntax
Parameter | Erläuterung | Datentyp |
in_point_features |
Die Eingabe-Punkt-Features mit den Z-Werten, die in ein Oberflächen-Raster interpoliert werden. | Feature Layer |
z_field |
Ein Feld mit einem Höhen- oder Größenwert für jeden Punkt. Dies kann ein Zahlenfeld oder das Shape-Feld sein, wenn die Eingabe-Punkt-Features Z-Werte enthalten. | Field |
cell_size (optional) |
Die Zellengröße im zu erstellenden Ausgabe-Raster. Dies ist der Wert in der Umgebung, wenn dieser explizit festgelegt wurde. Andernfalls wird die Breite oder Höhe (der kleinere Wert von beiden) der Ausdehnung der Eingabe-Punkt-Features im Eingaberaumbezug dividiert durch 250 verwendet. | Analysis Cell Size |
Rückgabewert
Name | Erläuterung | Datentyp |
out_raster |
Das Ausgabe-Raster für die interpolierte Oberfläche. | Raster |
Codebeispiel
In diesem Beispiel wird ein Punkt-Shapefile eingegeben und die Ausgabeoberfläche als TIFF-Raster interpoliert.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outNaturalNeighbor = NaturalNeighbor("ozone_pts.shp", "ozone", 2000)
outNaturalNeighbor.save("C:/sapyexamples/output/nnout.tif")
In diesem Beispiel wird ein Punkt-Shapefile eingegeben und die Ausgabeoberfläche als Grid-Raster interpoliert.
# Name: NaturalNeighbor_Ex_02.py
# Description: Interpolate a series of point features onto a
# rectangular raster using Natural Neighbor interpolation.
# 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 = "ca_ozone_pts.shp"
zField = "ozone"
cellSize = 40000
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute NaturalNeighbor
outNatNbr = NaturalNeighbor(inPointFeatures, zField, cellSize)
# Save the output
outNatNbr.save("C:/sapyexamples/output/nnout02")