描述
Item 可用于访问 UniqueValueRenderer 的项目级别信息。
讨论
Item 类允许您更改属性(如 label 和 description),也可用于访问各个项目的单独符号。
属性
属性 | 说明 | 数据类型 |
description (可读写) | 获取并设置项目的描述。 | String |
label (可读写) | 获取并设置项目的标签。 | String |
symbol (可读写) | 获取并设置与项目关联的符号。 | Symbol |
values (只读) | 获取与各个项目关联的值列表。当项目在组中分组时,有多个值。 | List |
代码示例
以下脚本首先将渲染器更改为 UniqueValueRenderer。然后,将 fields 属性设置为使用名为 Percent 的单一字段。接下来,它会遍历每个 ItemGroup 中的 Item,并将 RGB 颜色设置为红色,将 alpha 或不透明度值设置为与各个要素的 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')