整体思路,最后要加载到mxd文件中,然后导出图片
首先加载mxd文件
mxd = mapping.MapDocument(r"./11.mxd")
然后读取数据 并加载到图层中
sr = arcpy.SpatialReference(4326)
# 读取csv数据 创建 XY 事件图层
input_path = './res.csv'
arcpy.MakeXYEventLayer_management(input_path, "Lng", "Lat", "points_lyr", sr, "pm10")
df = mapping.ListDataFrames(mxd, "图层")[0]
# 添加点的图层
points_lyr = mapping.Layer("points_lyr")
mapping.AddLayer(df, points_lyr)
设置掩膜 并生成克里金栅格数据
env.mask = "../边界面/边界面.shp"
arcpy.CheckOutExtension("Spatial")
# 生成克里金栅格数据
outKring2 = Kriging("points_lyr", "pm10", KrigingModelOrdinary("SPHERICAL", 0.001, 0.89, 189.76, 42.95), 0.001)
创建栅格数据图层并加载到mxd中
# 创建栅格图层
arcpy.MakeRasterLayer_management(outKring2, "outKring2")
# mxd 添加克里金栅格的图层
outKring2_layer = mapping.Layer("outKring2")
mapping.AddLayer(df, outKring2_layer)
替换符号系统
# 从外部获取设定好的图层
outKring2_layer = mapping.ListLayers(mxd, "outKring2")[0]
# 从mxd内部部获取设定好的图层
# Kriging_std = mapping.ListLayers(mxd, "Kriging_std")[0]
# 读取设定好的符号系统图层
Kriging_std = mapping.Layer(r"./Kriging_std.lyr")
# 替换图层的符号系统
mapping.UpdateLayer(df, outKring2_layer, Kriging_std)
导出图片
# 缩放至可展示的比例
df.extent = outKring2_layer.getSelectedExtent()
mapping.ExportToJPEG(mxd, r"./Project.jpg",
data_frame=df,
df_export_width=1600,
df_export_height=1200,
world_file=True)