HOW TO

Konfigurieren eines Legendenelements für ein Layout in ArcGIS Pro unter Verwendung von Python

Last Published: October 22, 2021

Zusammenfassung

In ArcGIS Pro können in einer Layout-Legende anzuzeigende Kategorien im Bereich "Legendenelement" in den Legenden-Eigenschaften ausgewählt werden, wie in dem folgenden Bild gezeigt wird.

Bereich

In ArcPy enthält die Klasse "LegendItem" die Methode zum Auswählen der anzuzeigenden Kategorien jedoch nicht. Weitere Informationen finden Sie unter ArcGIS Pro: LegendItem. Um die Kategorieauswahl zu aktivieren, muss das kartographische Informationssystem von Python (Cartographic Information Model, CIM) im Skript verwenden werden, und die Schritte dazu werden in diesem Artikel beschrieben.

Vorgehensweise

  1. Legen Sie den gewünschten Workspace fest.
p = arcpy.mp.ArcGISProject('current') lyt = p.listLayouts()[0]
  1. Rufen Sie die CIM Layout-Definition ab.
lyt_cim = lyt.getDefinition('V2')
  1. Gehen Sie alle Layout-Elemente durch, um das Legenden-Element zu finden.
for elm in lyt_cim.elements: if elm.name == "Legend": #Legend item changes for itm in elm.items: if itm.name == "GreatLakes": #Update visibility itm.showLayerName = True itm.showHeading = False itm.showGroupLayerName = False
  1. Legen Sie die Änderungen am CIM wieder auf das Layout fest.
lyt.setDefinition(lyt_cim)

Im folgenden Code-Block finden Sie das vollständige Skript.

p = arcpy.mp.ArcGISProject('current') lyt = p.listLayouts()[0] #Get the layout's CIM definition lyt_cim = lyt.getDefinition('V2') for elm in lyt_cim.elements: if elm.name == "Legend": #Legend item changes for itm in elm.items: if itm.name == "GreatLakes": itm.showLayerName = True itm.showHeading = False itm.showGroupLayerName = False itm.showLabel = True lyt.setDefinition(lyt_cim)

Artikel-ID:000026663

Hilfe von ArcGIS-Expert*innen erhalten

Technischen Support kontaktieren

Die Esri Support-App herunterladen

Zu den Download-Optionen

Zugehörige Informationen

Weitere Informationen zu diesem Thema erkunden