HOW TO

Beschriften zugehöriger Tabellen mit ArcPy in ArcGIS Pro

Last Published: April 11, 2023

Zusammenfassung

In ArcGIS Pro können zugehörige Tabellen beliebiger Geodatabase-Tabellen oder Feature-Classes mithilfe von Werkzeugen aus dem Toolset "Felder" basierend auf Feldern beschriftet werden. In diesem Artikel wird der Workflow zum Beschriften zugehöriger Tabellen mit Werkzeugen aus dem Toolset "Felder" durch Ausführen eines ArcPy-Skripts in ArcGIS Pro beschrieben.

Vorgehensweise

  1. Starten Sie ArcGIS Pro, und öffnen Sie das Projekt.
  2. Klicken Sie im Bereich Inhalt mit der rechten Maustaste auf die Feature-Class, und klicken Sie auf Beschriftungseigenschaften, um den Bereich Beschriftungsklasse zu öffnen.
Der Bereich "Inhalt" in ArcGIS Pro
  1. Klicken Sie im Bereich Beschriftungsklasse auf die Schaltfläche BeschriftungsausdruckDas Symbol für den Beschriftungsausdruck, und konfigurieren Sie die folgenden Parameter.
    1. Wählen Sie für Sprache die Option Python aus.
    2. Geben Sie das folgende Skript im Abschnitt Ausdruck an. Ändern Sie <keyField1>, <firstLabel1>, <firstLabel2>, key1, key2, L, L2, <label2> und myDataTable entsprechend der Umgebung.
      • <keyField1> und key1 sind die Schlüsselfelder der Feature-Class, die zum in Beziehung setzen mit der zugehörigen Tabelle verwendet werden.
      • <firstLabel> und L sind die Felder der Feature-Class, die beschriftet werden sollen.
      • <keyField2> und key2 sind die Schlüsselfelder in der zugehörigen Tabelle.
      • L2 ist das Feld in der zugehörigen Tabelle, das beschriftet werden soll.
      • myDataTable ist der Ordnerpfad der verknüpften Tabellendatei und der Name der verknüpften Tabelle.
def FindLabel (<keyField1>, <firstLabel>):
    import arcpy
    key1 = <keyField1> # The key field in the feature class
    key2 = "<keyField2>"   # The key field in the related table
    L = <firstLabel> # The label field in the feature class
    L2 = "<label2>"   # The label field in the related table
    myDataTable = r"<path-to-related-table>"   # The related table file path
    cur = arcpy.da.SearchCursor(myDataTable, [key2, L2])
    for row in cur:
        if str(key1) == str(row[0]): 
            L = L + " " + str(row[1])
    return L

Der folgende Code-Block umfasst das voll funktionsfähige Skript.

def FindLabel ([ENAME], [CNAME]):
    import arcpy
    key1 = [ENAME] # Key field in feature class
    key2 = "District"   # Key field in related table
    L = [CNAME] # Label field in feature class
    L2 = "Population"   # Label field in related table
    myDataTable = r"C:\Users\IDT27\Documents\Artwrk\29840\HKPOP\HKPOP.gdb\HK2016_Census_csv"   # Path to related table
    cur = arcpy.da.SearchCursor(myDataTable, [key2, L2])
    for row in cur:
        if str(key1) == str(row[0]): 
            L = L + " " + str(row[1])
    return L
  1. Klicken Sie auf Überprüfen, um einen Test des Ausdrucks auszuführen. Wenn der Ausdruck gültig ist, klicken Sie auf Übernehmen.
Der Bereich "Beschriftungsklasse" mit den Parametern, die ausgefüllt werden sollen

Artikel-ID: 000029840

Benachrichtigungen erhalten und Lösungen für neue oder häufige Probleme finden

Unser neuer KI-Chatbot stellt zusammengefasste Antworten und Videolösungen für Sie bereit.

Esri Support App herunterladen

Zugehörige Informationen

Weitere Informationen zu diesem Thema erkunden

Unterstützung durch ArcGIS-Experten anfordern

An den technischen Support wenden

Esri Support App herunterladen

Zu Download-Optionen wechseln