LegendElement

Сводка

Объект LegendElement обеспечивает доступ к свойствам, с помощью которых можно размещать и изменять их размер в компоновке страницы, а также изменять заголовок.

Описание

LegendElement очень похож на MapSurroundElement. Он связан с MapFrame с помощью параметра, который называется mapFrame, но у него также есть параметр title.

Метод listElements для Layout возвращает список Python объектов элементов компоновки страницы. Чтобы получить список только элементов MapsurroundElements, используйте константу MAPSURROUND_ELEMENT для параметра element_type. wildcard также может быть использована для дальнейшей настройки поиска на основе элемента name. Важно давать каждому элементу компоновки страницы уникальное имя, чтобы их можно было легко изолировать с помощью скриптов ArcPy.

По умолчанию добавляемые в Карту слои автоматически добавляются в легенду. Это делает возможным создание Компоновки с пустой картой и легендой и динамического обновления этих элементов при добавлении в карту новых слоев.

Значения elementPositionX и elementPositionY базируются на положении якорной точки элемента, которое установлено на вкладке Формат. Если вы предпочитаете, чтобы при добавлении слоев LegendElement увеличивался вниз, то лучше установить положение якоря в верхнем левом углу.

Свойства

ВладениеОбъяснениеТип данных
elementHeight
(чтение и запись)

Высота элемента в единицах страницы.

Double
elementPositionX
(чтение и запись)

x-положение позиции точки якоря элемента. Единицы измерения задаются или считываются в единицах страницы.

Double
elementPositionY
(чтение и запись)

y-положение позиции точки якоря элемента. Единицы измерения задаются или считываются в единицах страницы.

Double
elementRotation
(чтение и запись)

Поворачивает элемент относительно положения якоря. Положительные значения обозначают направление против часовой стрелки, отрицательные – по часовой.

Double
elementWidth
(чтение и запись)

Ширина элемента в единицах страницы.

Double
mapFrame
(чтение и запись)

Ссылка на связанный MapFrame.

MapFrame
name
(чтение и запись)

Имя элемента. Является важным, чтобы все элементы имели уникальное имя, благодаря чему на них было бы легко ссылаться по имени.

String
showTitle
(чтение и запись)

Булево значение, определяющее, будет ли в легенде отображаться заголовок.

Boolean
syncLayerOrder
(чтение и запись)

Булево значение, определяющее, будут ли пункты в легенде в легенде располагаться в том же порядке, что и слои на карте.

Boolean
syncLayerVisibility
(чтение и запись)

Булево значение, определяющее, будут ли пункты автоматически отображаться в легенде, если они видны на карте.

Boolean
syncNewLayer
(чтение и запись)

Булево значение, определяющее, будут ли пункты автоматически добавляться в легенду при добавлении на карту.

Boolean
syncReferenceScale
(чтение и запись)

Булево значение, определяющее, будут ли символы в легенде соответствовать масштабированию символов на карте, если установлен базовый масштаб.

Boolean
title
(чтение и запись)

Текстовая строка, представляющая заголовок легенды.

String
type
(только чтение)

Возвращает значение LEGEND_ELEMENT.

String
visible
(чтение и запись)

Возвращает True, если элемент виден в компоновке. Вместо перемещения нежелательных элементов за пределы страницы перед печатью или экспортом, вы можете переключать видимость элемента.

Boolean

Пример кода

Пример LegendElement

Следующий скрипт добавит слои в карту, которая содержит вставленный элемент легенды с именем Legend. Слои будут автоматически добавлены в легенду, заголовок которой будет обновлен.

import arcpy
aprx = arcpy.mp.ArcGISProject(r"C:\Projects\YosemiteNP\Yosemite.aprx")
lyr1 = arcpy.mp.LayerFile(r"C:\Projects\Yosemite\LYRs\Trails.lyrx")
lyr2 = arcpy.mp.LayerFile(r"C:\Projects\Yosemite\LYRs\PointsOfInterest.lyrx")
m = aprx.listMaps("Yose*")[0]
m.addLayer(lyr1, "TOP")
m.addLayer(lyr2, "TOP")
lyt = aprx.listLayouts("Main Attrations")[0]
legend = lyt.listElements("LEGEND_ELEMENT", "Legend")[0]
legend.title = "Yosemite National Park"
aprx.save()
del aprx