方法

Python を使用して ArcGIS Pro のレイアウトに凡例アイテムを構成する

Last Published: October 22, 2021

サマリー

ArcGIS Pro で、以下の図に示すとおり、[凡例アイテム] ウィンドウで、凡例プロパティからレイアウトの凡例に表示するカテゴリを選択できます。

ArcGIS Pro で凡例プロパティを構成する際の [凡例アイテム] ウィンドウ

ただし、ArcPy の LegendItem クラスには、表示するカテゴリを選択するメソッドは含まれていません。 詳細については、「ArcGIS Pro: LegendItem」をご参照ください。 カテゴリの選択を有効にするには、Python CIM (Cartographic Information Module) をスクリプトで使用する必要があります。この記事では、その手順を紹介します。

手順

  1. 目的のワークスペースを設定します。
p = arcpy.mp.ArcGISProject('current') lyt = p.listLayouts()[0]
  1. レイアウトの CIM 定義を取得します。
lyt_cim = lyt.getDefinition('V2')
  1. すべてのレイアウト エレメントを反復処理し、凡例エレメントを見つけます。
for elm in lyt_cim.elements: if elm.name == "Legend": #凡例項目の変更 for itm in elm.items: if itm.name == "GreatLakes": #可視性を更新 itm.showLayerName = True itm.showHeading = False itm.showGroupLayerName = False
  1. CIM の変更内容をレイアウトに再度設定します。
lyt.setDefinition(lyt_cim)

以下のコード ブロックに、完全なスクリプトを示します。

p = arcpy.mp.ArcGISProject('current') lyt = p.listLayouts()[0] #レイアウトの CIM 定義を取得 lyt_cim = lyt.getDefinition('V2') for elm in lyt_cim.elements: if elm.name == "Legend": #凡例項目の変更 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)

記事 ID:000026663

ArcGIS の専門家からヘルプを受ける

テクニカル サポートへのお問い合わせ

Esri Support アプリのダウンロード

ダウンロード オプションに移動

関連情報

このトピックについてさらに調べる