Краткая информация
ItemGroup обеспечивает доступ UniqueValueRenderer к информации на уровне группы.
Обсуждение
Класс ItemGroup позволяет изменить значение heading для группы, а также обеспечивает доступ к отдельному items в каждой группе.
Свойства
Свойство | Описание | Тип данных |
heading (чтение и запись) | Получает и задает строку заголовка для группы. | String |
items (чтение и запись) | Получает и настраивает список Элементов или объектов RasterItem, связанных с группой. | Object |
Пример кода
Следующий скрипт сначала изменяет способ отображения на UniqueValueRenderer. Затем, он задает свойство fields, когда используется отдельное поле, которое называется Percent. Затем он проходит итератором через каждый Item в каждом ItemGroup и задает цвет RGB на красный для альфа, либо значение прозрачности, которое соответствует значению Percent для каждого объекта. И, наконец, он надписывает все значения, снова задает символы для слоя и сохраняет выходные данные.
import arcpy, os, sys
relpath = os.path.dirname(sys.argv[0])
p = arcpy.mp.ArcGISProject(relpath + r'\\UniqueValue.aprx')
m = p.listMaps('Map')[0]
l = m.listLayers('PercentCover*')[0]
sym = l.symbology
sym.updateRenderer('UniqueValueRenderer')
sym.renderer.fields = ['Percent']
for grp in sym.renderer.groups:
for itm in grp.items:
transVal = itm.values[0][0] #Grab the first "percent" value in the list of potential values
itm.symbol.color = {'RGB': [255, 0, 0, int(transVal)]}
itm.label = str(transVal) + '%'
l.symbology = sym
p.saveACopy(relpath + r'\\SavedOutput.aprx')