用arcgis pro 的arcpy,点图层的唯一值 渲染符号后,地图中不显示点符号

 
lyr = mapx.listLayers(lyrname)[0]
sym = lyr.symbology
sym.updateRenderer('UniqueValueRenderer')
sym.renderer.fields = ["字段名"]
lyr.symbology = sym
打开工程文件看,除了 图上没有点符号,其他一切正常。(有图例,有标注)
在桌面 重新点击添加所有值 会出来点符号。
已邀请:

张佳期

赞同来自:

你可以把官网在唯一值渲染的arcpy示例参考一下,链接:https://pro.arcgis.com/zh-cn/pro-app/latest/arcpy/mapping/uniquevaluerenderer-class.htm
 
我这边测试了一下,有效果:
import arcpy, os, sys

arcpy.env.overwriteOutput=True
p = arcpy.mp.ArcGISProject(r"D:\测试工作\Pro\MyProject\MyProject.aprx")
m = p.listMaps('Map')[0]
l = m.listLayers('yq_20200116_JSONToFeatures*')[0]
sym = l.symbology

sym.updateRenderer('UniqueValueRenderer')
sym.renderer.fields = ['OBJECTID_1']
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(r"D:\测试工作\Pro\MyProject\SavedOutput.aprx")
渲染前:
555.png

 
渲染后:
666.png

 

要回复问题请先登录注册