Zusammenfassung
Hiermit wird eine Datei (.swm) mit einer räumlichen Gewichtungsmatrix erstellt, die die räumlichen Beziehungen zwischen Features in einem Dataset wiedergibt.
Weitere Informationen zur Funktionsweise von "Räumliche Gewichtungsmatrix erstellen"
Abbildung
Verwendung
Die Ausgabe dieses Werkzeugs ist eine Datei mit räumlicher Gewichtungsmatrix (.swm). Werkzeuge wie die Hot-Spot-Analyse, die erfordern, dass Sie eine Option für die Konzeptualisierung von räumlichen Beziehungen angeben, akzeptieren eine Datei mit räumlicher Gewichtungsmatrix; wählen Sie GET_SPATIAL_WEIGHTS_FROM_FILE für den Parameter Konzeptualisierung von räumlichen Beziehungen und geben Sie für den Parameter Gewichtungsmatrix-Datei den vollständigen Pfad zur Datei mit räumlicher Gewichtungsmatrix an, die mit diesem Werkzeug erstellt wurde.
Dieses Werkzeug gibt auch die Merkmale der erstellten Datei mit räumlicher Gewichtungsmatrix wieder: Anzahl der Features, Konnektivität, minimale, maximale und durchschnittliche Anzahl an Nachbarn. Auf diese Zusammenfassung kann vom Fenster Ergebnisse zugegriffen werden, indem Sie im Fenster Ergebnisse mit der rechten Maustaste auf den Eintrag Meldungen klicken und dann Ansicht auswählen. Prüfen Sie in dieser Zusammenfassung, dass alle Features mindestens 1 Nachbarn haben. Im Allgemeinen sind besonders bei großen Datasets eine Mindestzahl von 8 Nachbarn und ein niedriger Wert für die Feature-Konnektivität erwünscht.
Wählen Sie bei Raum/Zeit-Analysen für den Parameter Konzeptualisierung von räumlichen Beziehungen SPACE_TIME_WINDOW aus. Raum definieren Sie über den Entfernungsschwellenwert, Zeit über ein Datums-/Uhrzeitfeld und einen Datums-/Uhrzeittyp (wie Stunden oder Tage) und einen Intervallwert von Datum/Uhrzeit. Der Intervallwert von Datum/Uhrzeit ist eine Ganzzahl. Wenn Sie z. B. 1000 Fuß eingeben, HOURS auswählen und als Intervallwert von Datum/Uhrzeit 3 angeben, werden Features, die sich in einer Entfernung von 1.000 Fuß und 3 Stunden voneinander befinden, als Nachbarn betrachtet.
Die Datei mit räumlicher Gewichtungsmatrix (.swm) dient dazu, die Konzeptualisierung der Beziehungen zwischen einer Gruppe von Features zu erstellen, zu speichern, für die Wiederverwendung bereitzustellen und freizugeben. Zur Verbesserung der Performance wird die Datei in einem binären Dateiformat erstellt. Feature-Beziehungen werden als dünnbesetzte Matrix gespeichert, sodass nur Nicht-Null-Beziehungen in die SWM-Datei geschrieben werden. Im Allgemeinen funktionieren die Werkzeuge immer noch einwandfrei, selbst wenn die SWM-Datei mehr als 15 Millionen Nicht-Null-Beziehungen enthält. Tritt ein Speicherfehler bei Verwendung der SWM-Datei auf, sollten Sie die Definition Ihrer Feature-Beziehungen überprüfen. Als Faustregel sollte eine Matrix mit einer räumlichen Gewichtung angestrebt werden, bei der jedes Feature mindestens 1 Nachbarn hat, die meisten Features 8 Nachbarn haben und kein Feature mehr als 1.000 Nachbarn hat.
Wenn die Eingabe-Feature-Class nicht projiziert ist (d. h., wenn Koordinaten in Grad, Minuten und Sekunden angegeben werden) oder als Ausgabe-Koordinatensystem ein geographisches Koordinatensystem festgelegt wurde, werden Entfernungen mit Sehnenmesswerten berechnet. Sehnenentfernungsmesswerte werden verwendet, weil sie schnell berechnet werden können und ausgezeichnete Schätzung von echten geodätischen Entfernungen zulassen, zumindest für Punkte innerhalb von 30 Grad voneinander. Sehnenentfernungen basieren auf einem abgeplatteten Sphäroid. Im Fall von zwei beliebigen Punkten auf der Erdoberfläche ist die Sehnenentfernung zwischen diesen die Länge einer Linie, die durch die dreidimensionale Erde führt, um diese beiden Punkte zu verbinden. Sehnenentfernungen werden in Metern angegeben.
Wenn in der Analyse "Sehnenentfernungen" verwendet werden, sollte der Parameter Entfernungsband (falls angegeben) in Metern angegeben werden.
In Vorversionen von ArcGIS 10.2.1 wurde eine Warnmeldung angezeigt, wenn aufgrund der ausgewählten Parameter und Umgebungseinstellungen Berechnungen mithilfe von geographischen Koordinaten (Grad, Minuten, Sekunden) durchgeführt wurden. In dieser Warnung wurden Sie dazu aufgefordert, die Daten in ein projiziertes Koordinatensystem zu projizieren, damit die Entfernungsberechnungen richtig durchgeführt werden. Ab 10.2.1 berechnet dieses Werkzeug Sehnenentfernungen jedoch immer, wenn Berechnungen in einem geographischen Koordinatensystem erforderlich sind.
-
Für Linien- und Polygon-Features werden bei Entfernungsberechnungen Feature-Schwerpunkte verwendet. Für Multipoints, Polylinien oder Polygone mit mehreren Teilen wird der Schwerpunkt mithilfe des gewichteten arithmetischen Mittelpunkts aller Feature-Teile berechnet. Die Gewichtung für Punkt-Features ist 1, für Linien-Features "Länge" und für Polygon-Features "Fläche".
Das Feld Eindeutige ID ist mit Feature-Beziehungen verknüpft, die von der Ausführung dieses Werkzeugs abgeleitet werden. Infolgedessen müssen die Werte unter Eindeutige ID für jedes Feature eindeutig sein und in einem permanenten Feld vorgehalten werden, das bei der Feature-Class verbleibt. Falls Sie kein Feld "Eindeutige ID" verwenden, können Sie dieses auf einfache Weise erstellen. Fügen Sie der Feature-Class-Tabelle ein neues Ganzzahlfeld (Feld hinzufügen) hinzu und berechnen Sie die Feldwerte so, dass sie dem Feld FID oder OBJECTID entsprechen (Feld berechnen). Da die Feldwerte FID und OBJECTID sich ändern können, wenn Sie eine Feature-Class kopieren oder bearbeiten, können Sie diese Felder nicht direkt für den Parameter Eindeutige ID verwenden.
Bei INVERSE- und FIXED-Konzeptualisierungen von räumlichen Beziehungen kann der Parameter Anzahl der Nachbarn den Parameter für den Entfernungsschwellenwert überschreiben. Wenn Sie einen Entfernungsschwellenwert von 10 Meilen und für den Parameter Nachbaranzahl den Wert 3 angeben, erhalten alle Features mindestens 3 Nachbarn, selbst wenn der Entfernungsgrenzwert erhöht werden muss, um sie zu finden. Der Entfernungsschwellenwert wird nur in den Fällen erhöht, in denen die minimale Anzahl an Nachbarn nicht erreicht wird.
Mit der Option CONVERT_TABLE für den Parameter Konzeptualisierung von räumlichen Beziehungen kann eine ASCII-Datei mit räumlicher Gewichtungsmatrix in eine SWM-formatierte Datei mit räumlicher Gewichtungsmatrix konvertiert werden. Zunächst müssen Sie dazu Ihre ASCII-Gewichtungen in eine formatierte Tabelle einfügen (z. B. in Excel).
Für Polygon-Features verwenden Sie fast immer ROW für den Parameter Reihen-Standardisierung. Die Zeilenstandardisierung verringert die Verzerrung, wenn die Anzahl der Nachbarn der einzelnen Features eine Funktion des Aggregationsschemas oder Sampling-Prozesses ist, und die tatsächliche räumliche Verteilung der analysierten Variable nicht widergespiegelt wird.
-
Das Hilfethema Modellierungen räumlicher Beziehungen enthält weitere Informationen zu den Parametern dieses Werkzeugs.
Die Werkzeuge, die eine Datei mit räumlicher Gewichtungsmatrix verwenden können, projizieren die Feature-Geometrie vor der Analyse in das Ausgabekoordinatensystem und alle mathematischen Berechnungen werden auf das Ausgabekoordinatensystem basiert. Wenn die Einstellung des Ausgabekoordinatensystems nicht mit dem Raumbezug der Eingabe-Feature-Class übereinstimmt, sollten Sie daher bei allen Analysen, in denen die Datei mit räumlicher Gewichtungsmatrix verwendet wird, entweder sicherstellen, dass das Ausgabekoordinatensystem mit den Einstellungen übereinstimmt, die beim Erstellen der Datei mit räumlicher Gewichtungsmatrix verwendet wurden, oder die Eingabe-Feature-Class projizieren, sodass sie dem mit der Datei mit räumlicher Gewichtungsmatrix verknüpften Raumbezug entspricht.
Syntax
arcpy.stats.GenerateSpatialWeightsMatrix(Input_Feature_Class, Unique_ID_Field, Output_Spatial_Weights_Matrix_File, Conceptualization_of_Spatial_Relationships, {Distance_Method}, {Exponent}, {Threshold_Distance}, {Number_of_Neighbors}, {Row_Standardization}, {Input_Table}, {Date_Time_Field}, {Date_Time_Interval_Type}, {Date_Time_Interval_Value})
Parameter | Erklärung | Datentyp |
Input_Feature_Class | Die Feature-Class, für die die räumlichen Beziehungen zwischen Features bewertet werden. | Feature Class |
Unique_ID_Field | Ein Ganzzahlfeld, das für jedes Feature in der Eingabe-Feature-Class einen anderen Wert enthält. Falls kein Feld für eindeutige IDs vorhanden ist, können Sie dieses erstellen, indem Sie der Feature-Class-Tabelle ein ganzzahliges Feld hinzufügen. Berechnen Sie die Feldwerte so, dass sie dem Feld FID oder OBJECTID entsprechen. | Field |
Output_Spatial_Weights_Matrix_File | Der vollständige Pfad für die Datei mit der räumlichen Gewichtungsmatrix (.swm), die Sie erstellen möchten. | File |
Conceptualization_of_Spatial_Relationships | Gibt an, wie räumliche Beziehungen zwischen Features konzeptualisiert werden.
| String |
Distance_Method (optional) | Gibt an, wie Entfernungen von den einzelnen Features zu benachbarten Features berechnet werden.
| String |
Exponent (optional) | Parameter für die INVERSE_DISTANCE-Berechnung. Typische Werte sind 1 oder 2. | Double |
Threshold_Distance (optional) | Gibt einen Entfernungsgrenzwert für die INVERSE_DISTANCE- und FIXED_DISTANCE-Konzeptualisierungen von räumlichen Beziehungen an. Dieser Wert sollte in den Einheiten des Ausgabe-Koordinatensystems der Umgebung eingegeben werden. Er definiert die Größe des Raumfensters für die SPACE_TIME_WINDOW-Konzeptualisierung von räumlichen Beziehungen. Der Wert null gibt an, dass kein Entfernungsschwellenwert angewendet wird. Ist dieser Parameter leer, wird ein Standardschwellenwert basierend auf der Ausdehnung der Ausgabe-Feature-Class und der Anzahl von Features berechnet. | Double |
Number_of_Neighbors (optional) | Eine Ganzzahl, die die minimale oder genaue Anzahl an Nachbarn angibt. Bei K_NEAREST_NEIGHBORS hat jedes Feature exakt diese angegebene Anzahl von Nachbarn. Bei INVERSE_DISTANCE oder FIXED_DISTANCE hat jedes Feature mindestens diese Anzahl von Nachbarn (die Schwellenwert-Entfernung wird zum Erreichen dieser Nachbarzahl bei Bedarf vorübergehend erweitert). Wenn eine der Konzeptualisierungen von räumlichen Beziehungen für Nachbarschaften ausgewählt wird, wird jedes Polygon dieser Mindestanzahl von Nachbarn zugewiesen. Für Polygone mit einer geringeren Anzahl von zusammenhängenden Nachbarn basieren zusätzliche Nachbarn auf der Nachbarschaft von Feature-Schwerpunkten. | Long |
Row_Standardization (optional) | Eine Zeilenstandardisierung wird immer dann empfohlen, wenn die Verteilung der Features aufgrund eines Referenzpunktschemas oder eines auferlegten Aggregationsschemas möglicherweise verzerrt ist.
| Boolean |
Input_Table (optional) | Eine Tabelle mit numerischen Gewichtungen, die Beziehungen zwischen allen Features in der Eingabe-Feature-Class herstellt. Erforderliche Felder sind die eindeutige ID der Eingabe-Feature-Class, die NID (Nachbar-ID) und WEIGHT. | Table |
Date_Time_Field (optional) | Ein Datumsfeld mit einem Zeitstempel für jedes Feature. | Field |
Date_Time_Interval_Type (optional) | Die Einheiten zum Messen von Zeit.
| String |
Date_Time_Interval_Value (optional) | Eine Ganzzahl, die die Anzahl an Zeiteinheiten wiedergibt, die das Zeitfenster bilden. Wenn Sie z. B. HOURS für den Intervalltyp von Datum/Uhrzeit auswählen und als Intervallwert von Datum/Uhrzeit 3 angeben, beträgt das Zeitfenster 3 Stunden; Features, die sich innerhalb des Raum- und Zeitfensters befinden, sind Nachbarn. | Long |
Codebeispiel
Räumliche Gewichtungsmatrix erstellen - Beispiel 1 (Python-Fenster)
Das folgende Skript im Python-Fenster veranschaulicht, wie Sie das Werkzeug "Räumliche Gewichtungsmatrix erstellen" verwenden.
import arcpy
arcpy.env.workspace = "C:/data"
arcpy.GenerateSpatialWeightsMatrix_stats("911Count.shp", "MYID","euclidean6Neighs.swm","K_NEAREST_NEIGHBORS","#", "#", "#", 6,"NO_STANDARDIZATION")
Räumliche Gewichtungsmatrix erstellen – Beispiel 2 (eigenständiges Python-Skript)
Das folgende eigenständige Python-Skript veranschaulicht, wie Sie das Werkzeug "Räumliche Gewichtungsmatrix erstellen" verwenden.
# Analyze the spatial distribution of 911 calls in a metropolitan area
# using the Hot-Spot Analysis Tool (Local Gi*)
# Import system modules
import arcpy
# Set property to overwrite existing output, by default
arcpy.env.overwriteOutput = True
# Local variables...
workspace = "C:/Data"
try:
# Set the current workspace (to avoid having to specify the full path to the feature classes each time)
arcpy.env.workspace = workspace
# Copy the input feature class and integrate the points to snap
# together at 500 feet
# Process: Copy Features and Integrate
cf = arcpy.CopyFeatures_management("911Calls.shp", "911Copied.shp",
"#", 0, 0, 0)
integrate = arcpy.Integrate_management("911Copied.shp #", "500 Feet")
# Use Collect Events to count the number of calls at each location
# Process: Collect Events
ce = arcpy.CollectEvents_stats("911Copied.shp", "911Count.shp", "Count", "#")
# Add a unique ID field to the count feature class
# Process: Add Field and Calculate Field
af = arcpy.AddField_management("911Count.shp", "MyID", "LONG", "#", "#", "#", "#",
"NON_NULLABLE", "NON_REQUIRED", "#",
"911Count.shp")
cf = arcpy.CalculateField_management("911Count.shp", "MyID", "[FID]", "VB")
# Create Spatial Weights Matrix for Calculations
# Process: Generate Spatial Weights Matrix...
swm = arcpy.GenerateSpatialWeightsMatrix_stats("911Count.shp", "MYID",
"euclidean6Neighs.swm",
"K_NEAREST_NEIGHBORS",
"#", "#", "#", 6,
"NO_STANDARDIZATION")
# Hot Spot Analysis of 911 Calls
# Process: Hot Spot Analysis (Getis-Ord Gi*)
hs = arcpy.HotSpots_stats("911Count.shp", "ICOUNT", "911HotSpots.shp",
"GET_SPATIAL_WEIGHTS_FROM_FILE",
"EUCLIDEAN_DISTANCE", "NONE",
"#", "#", "euclidean6Neighs.swm")
except:
# If an error occurred when running the tool, print out the error message.
print(arcpy.GetMessages())
Umgebungen
Lizenzinformationen
- Basic: Ja
- Standard: Ja
- Advanced: Ja
Verwandte Themen
- Überblick über das Toolset "Modellierung von räumlichen Beziehungen"
- Räumliche Autokorrelation (Morans I)
- Clustering von hohen/niedrigen Werten (Getis-Ord General G)
- Cluster- und Ausreißeranalyse (Anselin Local Morans I)
- Hot-Spot-Analyse (Getis-Ord Gi*)
- Gruppierungsanalyse
- Räumliche Gewichtungen
- Modellierung von räumlichen Beziehungen
- Räumliche Gewichtung des Netzwerks generieren