Beschriftung | Erläuterung | Datentyp |
Eingabe-Features | Die Eingabe-Polygon-Features. | Feature Layer |
Ausgabetabelle | Dies ist die Ausgabetabelle. | Table |
Nach Feld(ern) erfassen (optional) | Eingabe-Attributfelder oder Felder, die zur Identifizierung von Polygonen oder Polygongruppen benutzt werden und diese in der Ausgabe repräsentieren. | Field |
Bereichsüberlappungen einbeziehen (optional) | Bestimmt, ob Beziehungen zwischen überlappenden Flächen analysiert und in die Ausgabe einbezogen werden.
| Boolean |
Beide Seiten der Nachbarbeziehung einbeziehen (optional) | Gibt an, ob beide Seiten von Nachbarschaftsbeziehungen in der Ausgabe enthalten sind.
| Boolean |
XY-Toleranz (optional) | Die minimale Entfernung zwischen Koordinaten, ehe sie als gleich betrachtet werden. Standardmäßig ist dies die XY-Toleranz der Eingabe-Features. Vorsicht:Das Ändern dieses Parameterwertes kann zu einem Fehler oder zu unerwarteten Ergebnissen führen. Es wird empfohlen, diesen Parameter nicht zu ändern. Er wurde im Werkzeug-Dialogfeld aus der Ansicht entfernt. Standardmäßig wird die Eigenschaft XY-Toleranz des Raumbezugs der Eingabe-Feature-Class verwendet. | Linear Unit |
Lineare Ausgabeeinheiten (optional) | Gibt die Einheiten an, die verwendet werden, um die Gesamtlänge der lagegleichen Kante zwischen benachbarten Polygonen zu erfassen. Die Standardeinstellung ist die Einheit des Eingabe-Features.
| String |
Ausgabe-Flächeneinheiten (optional) | Gibt die Einheiten an, die verwendet werden, um die Bereichsüberlappung von benachbarten Polygonen zu erfassen. Die Standardeinstellung ist die Einheit des Eingabe-Features. Dieser Parameter ist nur aktiv, wenn der Parameter Bereichsüberlappung einbeziehen aktiviert wurde.
| String |
Zusammenfassung
Erstellt eine statistische Tabelle auf der Basis der Polygonnachbarschaft (Überlappungen, übereinstimmende Kanten oder Knoten).
Weitere Informationen zur Funktionsweise von "Benachbarte Polygone"
Abbildung
Verwendung
Das Werkzeug analysiert die Polygonnachbarschaft, wobei die folgenden Aspekte zwischen Quell-Polygonen und Nachbarpolygonen zusammengefasst werden:
- Überlappende Fläche (überlappende Nachbarn – optional)
- Länge der lagegleichen Kanten (benachbarte Kanten)
- Häufigkeit, mit der sich Grenzen an einem Punkt kreuzen oder berühren (Knotennachbarn)
Das Werkzeug analysiert und erfasst nur Nachbarschaften erster Ordnung. Darüber hinaus gehende Beziehungen werden nicht untersucht, d. h. Nachbarn von Nachbarn (Nachbarschaft zweiter Ordnung) werden nicht geprüft.
Der Parameter Nach Feld(ern) erfassen (in_fields in Python) wird verwendet, um eindeutige Polygone oder Polygongruppen zu identifizieren und ihre Nachbarschaftsinformationen nach Polygonen bzw. Polygongruppen zu erfassen. Um die Nachbarn eines jeden einzelnen Polygons in der Eingabe zu finden, geben Sie ein oder mehrere Eingabefelder an, die für jedes Polygon einen eindeutigen Wert bzw. ein Werteset (im Falle mehrerer Felder) liefern.
Wenn die angegebenen Felder eindeutige Polygongruppen identifizieren, werden die Nachbarschaftsinformationen zusammengefasst und nach den Gruppen erfasst.
Weitere Informationen zur Verwendung dieses Parameters finden Sie unter Funktionsweise von benachbarten Polygonen.
Sie können den Parameter Bereichsüberlappungen einbeziehen verwenden, um Beziehungen von Bereichsüberlappungen zu analysieren. Wenn Bereichsüberlappungen einbeziehen ausgewählt wird, enthält die Ausgabetabelle das Feld AREA, in dem die Bereichsüberlappungen für den analysierten überlappenden Nachbarn gespeichert werden. Wenn keine Überschneidung gefunden wird, ist der Feldwert für AREA gleich 0.
Tipp:
Die Berechnung von Beziehungen überlappender Bereiche ist eine Operation mit hohem Ressourcenaufwand. Die Performance wird daher möglicherweise stärker beeinträchtigt als beim Bestimmen von Kanten- und Knotennachbarbeziehungen. Wenn Sie wissen, dass die Daten keine überlappenden Features enthalten, oder wenn die Analyse von überlappenden Nachbarn nicht von Interesse ist, deaktivieren Sie den Parameter Bereichsüberlappungen einbeziehen (area_overlap = "NO_AREA_OVERLAP" in Python).
Vorsicht:
Der Parameter Bereichsüberlappungen einbeziehen (area_overlap = "AREA_OVERLAP" in Python) muss aktiviert sein, um Datensätze für Nachbarn zu erhalten, die vollständig in einem Quell-Polygon enthalten sind. Wenn der Parameter Bereichsüberlappungen einbeziehen nicht aktiviert ist, enthält die Ausgabetabelle keine Datensätze für Nachbarn, die vollständig in einem Quell-Polygon enthalten sind.
Es gibt keinen Eintrag in der Ausgabetabelle für Features, die keine Nachbarn sind.
Mit dem Parameter Beide Seiten der Nachbarbeziehung einbeziehen wird gesteuert, welche Beziehungen in der Ausgabe enthalten sind. Um alle Nachbarschaftsbeziehungen einschließlich gegenseitiger Beziehungen zu erfassen, aktivieren Sie Beide Seiten der Nachbarbeziehung einbeziehen (both_sides = "BOTH_SIDES" in Python). Wenn z. B. OID1 ein Nachbar von OID2 ist, wird in der Ausgabetabelle für OID1 der Eintrag angelegt, dass OID1 den Nachbarn OID2 hat, und für OID2, dass er den Nachbarn OID1 hat. Wenn Sie nur die erste Seite der Beziehung wünschen, deaktivieren Sie Beide Seiten der Nachbarbeziehung einbeziehen. Wenn im obigen Beispiel Beide Seiten der Nachbarbeziehung einbeziehen deaktiviert ist, wird in die Ausgabetabelle nur eingetragen, dass OID1 einen Nachbarn OID2 hat.
Lineare Ausgabeeinheiten gibt die Einheiten an, die für die gemeinsame Grenzlänge zwischen Nachbarn verwendet werden sollen. Standardmäßig werden die gleichen Einheiten verwendet, die durch das Eingabe-Feature-Koordinatensystem definiert werden.
Ausgabe-Flächeneinheiten wird nur verwendet, wenn der Parameter Bereichsüberlappung aktiviert wurde (area_overlap = "AREA_OVERLAP" in Python). Wenn Bereichsüberlappungen einbeziehen aktiviert wird, werden die Einheiten, mit denen die Bereichsüberlappung von Nachbarn berechnet wird, mit dem Parameter Ausgabe-Flächeneinheiten angegeben. Standardmäßig werden die gleichen Einheiten verwendet, die durch das Eingabe-Feature-Koordinatensystem definiert werden.
Der Parameterwert Ausgabetabelle kann eine File-Geodatabase- oder .dbf-Tabelle sein.
Für jedes Feld, das im Parameter Nach Feld(ern) erfassen angegeben wurde, enthält die Ausgabetabelle zwei Felder. Dabei findet die folgende Namenskonvention Anwendung: src_<field> und nbr_<field>. Die Felder repräsentieren die Feldwerte für die Quelle und den Nachbarn aus der Eingabe.
Die Ausgabetabelle enthält zudem die folgenden Felder:
- AREA: In diesem Feld wird die gesamte überlappende Fläche zwischen einem Quell-Polygon und einem benachbarten Polygon (überlappende Nachbarn) gespeichert. Dieses Feld wird nur dann in die Ausgabetabelle aufgenommen, wenn der Parameter Bereichsüberlappungen einbeziehen aktiviert ist (area_overlap = "AREA_OVERLAP" in Python).
- LENGTH: Dieses Feld speichert die Gesamtlänge von lagegleichen Kanten zwischen einem Quell-Polygon und einem benachbarten Polygon.
- NODE_COUNT: Dieses Feld speichert die Anzahl, wie oft ein Quell-Polygon und ein benachbartes Polygon einander an einem Punkt überkreuzen oder berühren.
Wenn unter den Eingabe-Features eine Auswahl vorgenommen wurde, werden nur die selektierten Features analysiert.
Parameter
arcpy.analysis.PolygonNeighbors(in_features, out_table, {in_fields}, {area_overlap}, {both_sides}, {cluster_tolerance}, {out_linear_units}, {out_area_units})
Name | Erläuterung | Datentyp |
in_features | Die Eingabe-Polygon-Features. | Feature Layer |
out_table | Dies ist die Ausgabetabelle. | Table |
in_fields [field,...] (optional) | Eingabe-Attributfelder oder Felder, die zur Identifizierung von Polygonen oder Polygongruppen benutzt werden und diese in der Ausgabe repräsentieren. | Field |
area_overlap (optional) | Gibt an, ob Überlappungsbeziehungen analysiert werden und in der Ausgabe enthalten sind.
| Boolean |
both_sides (optional) | Gibt an, ob beide Seiten von Nachbarschaftsbeziehungen in der Ausgabe enthalten sind.
| Boolean |
cluster_tolerance (optional) | Die minimale Entfernung zwischen Koordinaten, ehe sie als gleich betrachtet werden. Standardmäßig ist dies die XY-Toleranz der Eingabe-Features. Vorsicht:Das Ändern dieses Parameterwertes kann zu einem Fehler oder zu unerwarteten Ergebnissen führen. Es wird empfohlen, diesen Parameter nicht zu ändern. Er wurde im Werkzeug-Dialogfeld aus der Ansicht entfernt. Standardmäßig wird die Eigenschaft XY-Toleranz des Raumbezugs der Eingabe-Feature-Class verwendet. | Linear Unit |
out_linear_units (optional) | Gibt die Einheiten an, die verwendet werden, um die Gesamtlänge der lagegleichen Kante zwischen benachbarten Polygonen zu erfassen. Die Standardeinstellung ist die Einheit des Eingabe-Features.
| String |
out_area_units (optional) | Gibt die Einheiten an, die verwendet werden, um die Bereichsüberlappung von benachbarten Polygonen zu erfassen. Die Standardeinstellung ist die Einheit des Eingabe-Features. Dieser Parameter wird nur aktiviert, wenn der Parameter area_overlap auf AREA_OVERLAP festgelegt ist.
| String |
Codebeispiel
Mit diesem Beispielskript wird nach benachbarten Wahlbezirken in Nova Scotia gesucht.
import arcpy
arcpy.management.MakeFeatureLayer(r"C:\Data\Canada\CanadaElecDist.shp",
"Canada_ElectoralDist")
arcpy.management.SelectLayerByAttribute("Canada_ElectoralDist", "NEW_SELECTION",
"\"PROVCODE\" = 'NS'")
count = arcpy.management.GetCount("Canada_ElectoralDist")[0]
print("Selected feature count: {}".format(count))
arcpy.analysis.PolygonNeighbors("Canada_ElectoralDist",
r"C:\Data\Output\NS_elec_neigh.dbf", "ENNAME")
print(arcpy.GetMessages())
Lizenzinformationen
- Basic: Ja
- Standard: Ja
- Advanced: Ja