Kerndichte (Spatial Analyst)

Mit der Spatial Analyst-Lizenz verfügbar.

Zusammenfassung

Berechnet mit einer Kernel-Funktion eine Magnitude pro Flächeneinheit aus Punkt- oder Polylinien-Features, um für jeden Punkt bzw. jede Polylinie eine sanft abgeschrägte Oberfläche anzupassen. Eine Barriere kann dazu dienen, den Einfluss eines Features beim Berechnen der Kerndichte zu ändern.

Weitere Informationen zur Funktionsweise von "Kerndichte"

Abbildung

Abbildung zur Kerndichte
OutRas = KernelDensity(InPts, None, 30)

Verwendung

  • Größere Werte des Parameters Suchradius (search_radius in Python) führen zu einem glatteren, stärker generalisierten Dichte-Raster. Kleinere Werte erzeugen ein Raster, in dem weitere Details angezeigt werden.

  • Nur die Punkte oder die Teile einer Linie, die innerhalb der Nachbarschaft liegen, werden bei der Berechnung der Dichte berücksichtigt. Wenn keine Punkte oder Linienabschnitte in der Nachbarschaft einer bestimmten Zelle liegen, wird dieser Zelle der Wert "NoData" zugewiesen.

  • Sehr große oder sehr kleine Werte im Parameter Feld mit Grundgesamtheit (population_field in Python) können zu zweifelhaften Ergebnissen führen. Wenn der Mittelwert des Feldes mit der Grundgesamtheit sehr viel größer als 1 ist (z. B. bei der Bevölkerung von Städten), ist der Standardsuchradius möglicherweise sehr klein, sodass die um die Eingabepunkt angeordneten Ringe sehr klein sind. Ist der Mittelwert des Feldes mit der Grundgesamtheit dagegen wesentlich kleiner als 1, kann der berechnete Suchradius unverhältnismäßig groß scheinen. In diesen Fällen können Sie selbst einen Suchradius eingeben.

  • Die Ausgabezellengröße kann über einen numerischen Wert definiert oder aus einem vorhandenen Raster-Dataset abgerufen werden. Wird die Zellengröße nicht explizit über den Parameterwert angegeben, wird sie aus der Umgebung "Zellengröße" abgeleitet, falls diese angegeben wurde. Wenn der Parameter und die Umgebung für die Zellengröße nicht angegeben wurden, aber die Umgebung Fang-Raster festgelegt wurde, wird die Zellengröße des Fang-Rasters verwendet. Wenn kein Wert angegeben wird, wird die Zellengröße aus der Breite oder Höhe der Ausdehnung (je nachdem was kürzer ist) berechnet, indem der Wert durch 250 dividiert wird. Dabei wird die Ausdehnung in der Umgebung in Ausgabekoordinatensystem angegeben.

  • Wenn die Zellengröße mit einem numerischen Wert angegeben wird, wird dieser vom Werkzeug direkt für das Ausgabe-Raster verwendet.

    Wenn die Zellengröße mit einem Raster-Dataset angegeben wird, zeigt der Parameter anstelle des Zellengrößenwerts den Pfad des Raster-Datasets an. Die Zellengröße dieses Raster-Datasets wird direkt in der Analyse verwendet, vorausgesetzt der Raumbezug stimmt mit dem Ausgabe-Raumbezug überein. Wenn der Raumbezug des Datasets nicht mit dem Ausgabe-Raumbezug übereinstimmt, wird er basierend auf der ausgewählten Projektionsmethode für Zellengröße projiziert.

  • Der Standardsuchradius wird anhand der räumlichen Konfiguration und der Anzahl der Eingabepunkte berechnet. Bei diesem Ansatz werden räumliche Ausreißer (d. h. Eingabepunkte, die sich weit von den anderen Punkten entfernt befinden) korrigiert, sodass der Suchradius nicht unverhältnismäßig groß wird.

  • Wenn die Maßstabsfaktoreinheiten für Flächeneinheiten im Verhältnis zu den Features (Entfernung zwischen Punkten oder Länge der Linienabschnitte, je nach Feature-Typ) klein sind, sind die Ausgabewerte möglicherweise klein. Um größere Werte zu erhalten, wählen Sie als Maßstabsfaktor für Flächeneinheiten eine größere Einheit (z. B. Quadratkilometer statt Quadratmeter) aus.

  • Der Parameter Ausgabezellenwerte (out_cell_values in Python) gibt an, wofür die Ausgabe-Raster-Werte stehen. Bei Auswahl von Dichte stellen die Werte den Kerndichtewert pro Flächeneinheit für jede Zelle dar. Bei Auswahl von Erwartete Anzahl stellen die Werte die Kerndichte pro Zellenbereich dar. Die Anzahl aus den Dichtewerten wird mit der folgenden Gleichung berechnet: Anzahl = Dichte × Fläche.

  • Die Option Planar (PLANAR in Python) im Parameter Methode (method in Python) eignet sich für Analysen, die in einem lokalen Maßstab mit einer Projektion, bei der die korrekte Entfernung und Fläche genau beibehalten werden, untersucht wird. Die Option Geodätisch (GEODESIC in Python) ist geeignet, wenn die Analyse in einem regionalen oder großen Maßstab durchgeführt werden soll (z. B. mit Web Mercator oder einem beliebigen anderen geographischen Koordinatensystem). Bei dieser Methode wird die Krümmung des Sphäroiden berücksichtigt, und die Daten in der Nähe der Pole und der internationalen Datumsgrenze werden richtig verarbeitet.

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

Syntax

KernelDensity(in_features, population_field, {cell_size}, {search_radius}, {area_unit_scale_factor}, {out_cell_values}, {method}, {in_barriers})
ParameterErklärungDatentyp
in_features

Die Eingabe-Features (Punkt oder Linie), für die die Dichte berechnet werden soll.

Feature Layer
population_field

Das Feld, das die Gesamtheitswerte für die einzelnen Features angibt. Das "Feld mit Grundgesamtheit" ist die Anzahl oder Menge, die über die Landschaft verteilt werden soll, um eine kontinuierliche Oberfläche zu erstellen.

Das Feld mit Grundgesamtheit kann sowohl Ganzzahl- als auch Gleitkommawerte enthalten.

Die Optionen und das Standardverhalten des Feldes werden weiter unten aufgeführt.

  • Wählen Sie NONE aus, wenn kein Element oder besonderer Wert verwendet und jedes Feature einmal gezählt wird.

  • Wenn die Eingabe-Features Z-Werte enthalten, können Sie das Feld Shape verwenden.

  • Andernfalls lautet die Standardeinstellung POPULATION. Darüber hinaus gelten möglicherweise die folgenden Bedingungen:

    • Wenn das Feld POPULATION nicht vorhanden ist, jedoch ein Feld namens POPULATIONxxxx, wird dieses standardmäßig verwendet. Dabei steht xxxx für beliebige gültige Zeichen, z. B. POPULATION6, POPULATION1974 und POPULATIONROADTYPE.
    • Wenn keines der Felder POPULATION oder POPULATIONxxxx vorhanden ist, jedoch ein Feld namens POP, wird dieses standardmäßig verwendet.
    • Wenn keines der Felder POPULATION, POPULATIONxxxx oder POP vorhanden ist, jedoch ein Feld namens POPxxxx, wird dieses standardmäßig verwendet.
    • Wenn keines der Felder POPULATION, POPULATIONxxxx, POP und POPxxxx vorhanden ist, wird standardmäßig NONE verwendet.
Field
cell_size
(optional)

Die Zellengröße des Ausgabe-Rasters, das erstellt wird.

Dieser Parameter kann über einen numerischen Wert definiert oder aus einem vorhandenen Raster-Dataset abgerufen werden. Wenn die Zellengröße nicht explizit als Parameterwert angegeben wurde, wird der Zellengrößenwert der Umgebung verwendet, sofern dieser angegeben wurde. Andernfalls werden zusätzliche Regeln verwendet, um ihn aus anderen Eingaben zu berechnen. Weitere Informationen finden Sie im Abschnitt zur Verwendung.

Analysis Cell Size
search_radius
(optional)

Der Suchradius, innerhalb dessen die Dichte berechnet wird. Die Einheit basiert auf der linearen Einheit der Projektion des Ausgaberaumbezugs.

Wenn beispielsweise als Einheit Meter verwendet wird und Sie alle Features innerhalb eines Umkreises von einer Meile einschließen möchten, legen Sie einen Suchradius von 1609,344 (1 Meile = 1609,344 Meter) fest.

Der Standardsuchradius wird speziell für das Eingabe-Dataset berechnet. Dabei kommt eine räumliche Varianz der Faustregel von Silverman (Silverman, 1986) zum Einsatz, die für räumliche Ausreißer (Punkte, die sich weit von den restlichen Punkten entfernt befinden) geeignet ist. Eine Beschreibung des Algorithmus finden Sie in den Verwendungshinweisen.

Double
area_unit_scale_factor
(optional)

Die Flächeneinheiten für die Ausgabedichtewerte.

Die Standardeinheit basiert auf der linearen Einheit des Ausgabe-Raumbezugs. Sie können dieses Einstellung in die gewünschte Einheit ändern, wenn Sie die Dichteausgabe konvertieren möchten. Bei Werten für die Liniendichte werden die Einheiten von Länge und Fläche gleichermaßen konvertiert.

Wurde kein Ausgabe-Raumbezug angegeben, ist dieser mit der Eingabe-Feature-Class identisch. Die Standardeinheiten der Ausgabedichte ergeben sich wie folgt aus den linearen Einheiten des Ausgabe-Raumbezugs: Sind die linearen Ausgabeeinheiten in Meter angegeben, wird als Ausgabeflächendichte-Einheit Quadratkilometer festgelegt, sodass für Punkt-Features Quadratkilometer oder für Polylinien-Features Kilometer pro Quadratkilometer ausgegeben werden. Sind die linearen Ausgabeeinheiten in Fuß angegeben, wird als Ausgabeflächendichte-Einheit Quadratmeilen festgelegt.

Sind die linearen Ausgabeeinheiten weder in Meter noch in Fuß angegeben, wird als Ausgabeflächendichte-Einheit Quadrat-Karteneinheiten festgelegt. Das heißt, die Einheiten der Ausgabedichte entsprechen dem Quadrat der linearen Einheiten des Ausgabe-Raumbezugs. Sind die linearen Ausgabeeinheiten beispielsweise in Zentimeter angegeben, wird als Ausgabeflächendichte-Einheit Quadrat-Karteneinheiten festgelegt, hier also Quadratzentimeter. Sind die linearen Ausgabeeinheiten in Kilometer angegeben, wird als Ausgabeflächendichte-Einheit Quadrat-Karteneinheiten festgelegt, hier also Quadratkilometer.

Die verfügbaren Optionen und die entsprechenden Ausgabedichte-Einheiten lauten wie folgt:

  • SQUARE_MAP_UNITSEntspricht dem Quadrat der linearen Einheiten des Ausgaberaumbezugs.
  • SQUARE_MILESFür Meilen (U.S.).
  • SQUARE_KILOMETERSFür Kilometer.
  • ACRESFür Acres (U.S.).
  • HECTARESFür Hektar.
  • SQUARE_YARDSFür Yards (U.S.).
  • SQUARE_FEETFür Fuß (U.S.).
  • SQUARE_INCHESFür Zoll (U.S.).
  • SQUARE_METERSFür Meter.
  • SQUARE_CENTIMETERSFür Zentimeter
  • SQUARE_MILLIMETERSFür Millimeter
String
out_cell_values
(optional)

Gibt an, wofür die Werte im Ausgabe-Raster stehen.

  • DENSITIESDie Ausgabewerte stellen den berechneten Dichtewert pro Flächeneinheit für jede Zelle dar. Dies ist die Standardeinstellung.
  • EXPECTED_COUNTSDie Ausgabewerte stellen den berechneten Dichtewert pro Zellenbereich dar.

Da der Zellenwert sich auf die angegebene Zellengröße bezieht, ist ein Resampling des ausgegebenen Rasters bei einer anderen Zellengröße nicht möglich.

String
method
(optional)

Gibt an, ob die flache Erde (planare Methode) oder der kürzeste Pfad auf einem Sphäroiden (geodätische Methode) verwendet wird.

  • PLANARDie planare Entfernung zwischen Features wird verwendet. Dies ist die Standardeinstellung.
  • GEODESICDie geodätische Entfernung zwischen Features wird verwendet.

Bei der geodätischen Methode werden nur Punkte als Eingabe-Features unterstützt.

String
in_barriers
(optional)

Das Dataset, das die Barrieren definiert.

Die Barrieren können Feature-Layer von Polylinien- oder Polygon-Features sein.

Dieser Parameter wird nur unterstützt, wenn für den Parameter method die Option PLANAR festgelegt wurde.

Feature Layer

Rückgabewert

NameErklärungDatentyp
out_raster

Das Ausgabe-Raster für "Kerndichte".

Es handelt sich stets um ein Gleitkomma-Raster.

Raster

Codebeispiel

KernelDensity – Beispiel 1 (Python-Fenster)

In diesem Beispiel wird ein geglättetes Dichte-Raster aus einem Punkt-Shapefile berechnet.

from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outKDens = KernelDensity("rec_sites.shp", " ", 45, 1200, "SQUARE_KILOMETERS",
                         " ", "GEODESIC")
outKDens.save("C:/sapyexamples/output/KD_out.tif")
KernelDensity – Beispiel 2 (eigenständiges Skript)

In diesem Beispiel wird ein geglättetes Dichte-Raster aus einem Punkt-Shapefile berechnet.

# Name: KernelDensity_Ex_02.py
# Description: Calculates the ozone concentration pattern divided by
#              Sierra Nevada Mountain in California
#              based on the point samples using a kernel function to
#              fit a smoothly tapered surface.
# 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
inFeatures = "ozone_california.shp"
populationField = "OZONE"
cellSize = 60
searchRadius = 2500
inBarriers = "SierraNevada.shp"

# Execute KernelDensity
outKernelDensity = KernelDensity(inFeatures, populationField, cellSize, searchRadius,
                                 "SQUARE_KILOMETERS", "DENSITIES", "PLANAR", inBarriers)

# Save the output 
outKernelDensity.save("C:/sapyexamples/output/KD_ozone_california.tif")

Lizenzinformationen

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

Verwandte Themen