我是靠谱客的博主 诚心蜡烛,最近开发中收集的这篇文章主要介绍ArcGIS多个shp批量单独导出地图,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

多个shp批量导出地图步骤:

1.设置mxd模板

2.找个shp用要用的符号库渲染、把shp另存为图层(.lyr)文件

3.依次加载shp,套用另存的图层(.lyr)文件,完成符号化

4.每个shp单独保存一个mxd文件

5.批量导出mxd地图

代码如下(示例):

# -*- coding: cp936 -*-
import arcpy
import os
path = (r"F:实验成果图MXD文件夹")
res = 300
arcpy.env.workspace = (r"F:实验成果图shp图层")
fcs = arcpy.ListFeatureClasses()
for fc in fcs:
    mxd = arcpy.mapping.MapDocument(r"F:实验成果图MXD文件夹模板.mxd")
    df = arcpy.mapping.ListDataFrames(mxd, "图层")[0]   
    addLayer = arcpy.mapping.Layer(fc)
    arcpy.mapping.AddLayer(df, addLayer, "AUTO_ARRANGE")
    inputLayer = arcpy.mapping.ListLayers(mxd, "", df)[0]
    symbologyLayer = arcpy.mapping.Layer(r"F:实验成果图shp图层模板.lyr")
    arcpy.ApplySymbologyFromLayer_management(inputLayer, symbologyLayer)    
    mxd.saveACopy(fc[:-4]+'.mxd')
del mxd
for root,dirs,files in os.walk(path):
  for afile in files:
    if afile[-4:].lower() == '.mxd':
      mxd = arcpy.mapping.MapDocument(os.path.join(root,afile))
      arcpy.mapping.ExportToJPEG(mxd,os.path.join(path,afile[:-3] + 'jpg'), resolution = res)
del mxd

说明:本文为工作之中的一点总结,不足之处敬请谅解

最后

以上就是诚心蜡烛为你收集整理的ArcGIS多个shp批量单独导出地图的全部内容,希望文章能够帮你解决ArcGIS多个shp批量单独导出地图所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(52)

评论列表共有 0 条评论

立即
投稿
返回
顶部