Attribute aus Polygon verbinden (Crime Analysis and Safety)

Zusammenfassung

Verbindet Attribute aus Eingabe-Polygon-Features mit Eingabe-Punkt-Features.

Verwendung

  • Das Werkzeug überträgt Attribute aus Eingabe-Polygon-Features in Ziel-Punkt-Features, wenn ein Punkt-Feature sich vollständig in einem Polygon-Feature befindet oder darin enthalten ist.

  • Standardmäßig werden keine Attribute der Eingabe-Polygon-Features an die Attribute der Ziel-Punkt-Features angehängt. Sie können definieren, welche Attribute den Ziel-Punkt-Features hinzugefügt werden, in dem Sie diese im Parameter Join-Felder angeben.

  • Wenn ein Feature in Ziel-Punkt-Features in mehreren Features in Eingabe-Polygon-Features enthalten ist, erhält der Punkt das Attribut von dem Polygon mit dem größten Objekt-ID-Wert.

Syntax

arcpy.ca.JoinAttributesFromPolygon(target_features, in_features, fields)
ParameterErklärungDatentyp
target_features

Die Punkt-Features, die mit Attributen aus den in_features aktualisiert werden.

Feature Layer
in_features

Die Eingabe-Polygon-Features.

Feature Layer
fields
[fields,...]

Die Felder aus den Eingabe-Polygon-Features, die an die Ziel-Punkt-Features angehängt werden.

Field

Abgeleitete Ausgabe

NameErklärungDatentyp
out_features

Die aktualisierten Punkt-Features.

Feature-Layer

Codebeispiel

JoinAttributesFromPolygon – Beispiel 1 (Python-Fenster)

Das folgende Skript für das Python-Fenster veranschaulicht, wie die Funktion JoinAttributesFromPolygon im unmittelbaren Modus verwendet wird:

import arcpy
arcpy.env.workspace = r"C:\data\city_pd.gdb"
arcpy.ca.JoinAttributesFromPolygon("Arrests", "Precincts")
JoinAttributesFromPolygon – Beispiel 2 (eigenständiges Skript)

Das folgende Python-Skript veranschaulicht die Verwendung der Funktion JoinAttributesFromPolygon in einem eigenständigen Skript.

# Name: JoinAttributesFromPolygon.py
# Description:  Adding police precinct id and name to arrests, then printing the number of arrests by precinct.
# import system modules 
import arcpy
# Set environment settings
arcpy.env.workspace = r"C:\data\city_pd.gdb"
# Set local variables
target_features = "Arrests"
in_features = "Precincts"
join_fields = ['districtid', 'name'] # Police Precinct ID and Name
# Execute JoinAttributesFromPolygon
arcpy.ca.JoinAttributesFromPolygon(target_features, in_features, join_fields)
#Print count of arrest by precinct
count_dict = {}
with arcpy.da.SearchCursor(target_features, 'name') as cursor:
    for row in cursor:
        try:
            count_dict[row[0]] += 1
        except:
            count_dict[row[0]] = 1
for precinct, count in count_dict.items():
    print("Name: " + precinct + " Arrests: " + str(count))

Lizenzinformationen

  • Basic: Ja
  • Standard: Ja
  • Advanced: Ja

Verwandte Themen