ArcGISPro 批量插入层图并将图层符号设置为指定目标图层的样式
实际应用中,有一个GDB存了10924张路径栅格数据,现在要将个10942张栅格数据添加到 ArcGIS Pro 中,且要按照一个Pro中已经配好符号样式的图层,设置这个10942张栅格数据,效果如下图所示。
代码如下:
# 将路径中(.gdb、文件夹)所有的格栅层图按照目标图层的符号样式渲染,并依次插入到目标图层后面
aprx = arcpy.mp.ArcGISProject("CURRENT")
map = aprx.activeMap
# 获取已配好样式的图层
for l in map.listLayers():
if l.name == "已配好样式的图层名":
tlayer = l
break
# 获取10942张栅格数据
arcpy.env.workspace = r"D:\xxx\xxx.gdb"
rasters = arcpy.ListRasters("*_costPath")
# 依次加载10942张栅格数据,且设置样式,同时移动到合适的位置
for r in rasters:
l = map.addDataFromPath(os.path.join(arcpy.env.workspace, r))
layer = arcpy.management.ApplySymbologyFromLayer(
in_layer=l,
in_symbology_layer=tlayer,
update_symbology="UPDATE")[0]
layer.name = r
layer.visible = False
map.moveLayer(tlayer, layer, "AFTER") # 依次移动到目标图层的后面
#tlayer = layer