
用户使用arcpy.mp模块以及gp工具applysymbofromlayer,通过图层文件来符号化栅格并加载到工程的地图中。看一下它的代码。
# 用lyrx文件符号化栅格testraster
import arcpy
arcpy.env.overwriteOutput = True
arcpy.env.workspace = r"E:\ArcGISproj\MyProj\MyProj.gdb"
aprx_path = r"E:\ArcGISproj\MyProj2\MyProj2.aprx"
inputR = r"E:\ArcGISproj\MyProj\MyProj.gdb\testraster"
render_lyx = r"E:\ArcGISproj\MyProj\lyrfile.lyrx"
aprx = arcpy.mp.ArcGISProject(aprx_path)
map = aprx.listMaps()[0]
try:
    rendenr_ly = arcpy.mp.LayerFile(rendenr_lyx)
    map.addLayer(rendenr_ly)
    map.addDataFromPath(inputR)
    arcpy.ApplySymbologyFromLayer_management(inputR, render_ly, None, "MAINTAIN")
except arcpy.ExecuteError:
    print(arcpy.GetMessage(2))
aprx.save()
del aprx
  如下图所示,输入栅格并没有符号化。

执行代码成功,输入栅格和lyrx图层文件都加载到map中;但是输入栅格没有应用符号化,也就是gp工具好像没有生效。
可以这样修改代码,把gp运行结果对象再添加到map中。
result = arcpy.ApplySymbologyFromLayer_management( inputR, render_lyx, None, "MAINTAIN")
map.addLayer(result.getOutput(0))或者这样修改
map.addDataFromPath(inputR)
input = map.listLayers()[0]
arcpy.ApplySymbologyFromLayer_management(
      input, render_lyx, None, "MAINTAIN")因为用户代码中并没有引用到map对象中的layer对象,虽然输入栅格被添加到map中,符号化却没有应用。