1. 首页
  2. 编程语言
  3. C
  4. ArcGIS批量出图方法非数据驱动出图只显示单一图斑

ArcGIS批量出图方法非数据驱动出图只显示单一图斑

上传者: 2023-03-06 11:27:50上传 PY文件 1.51KB 热度 12次

在ArcGIS中,批量出图是一种非常实用的方法。通常我们会使用数据驱动出图的方式,但是它有一个缺点,就是如果几个图斑相邻的话,会显示全部的图斑。最近我遇到了一个工作需求,需要批量出图并且只显示当前图斑。下面是我用Python编写的代码,同时也包含了图层说明:

import arcpy

# 要素图层
in_fc = "path/to/your/feature_class"
# 字段依赖于要素图层
in_fld = "your_field"
# 输出文件夹
out_folder = "path/to/your/output_folder"

# 构建游标
with arcpy.da.SearchCursor(in_fc, [in_fld]) as cursor:
    for row in cursor:
        # 获取要素OID
        where_clause = "{} = '{}'".format(arcpy.AddFieldDelimiters(in_fc, in_fld), row[0])
        # 构建图层选择器
        arcpy.MakeFeatureLayer_management(in_fc, "lyr", where_clause)
        # 构建导出地图的名称
        out_name = "{}.pdf".format(row[0])
        # 构建导出地图的路径
        out_path = "{}/{}".format(out_folder, out_name)
        # 导出地图
        arcpy.mapping.ExportToPDF(arcpy.mapping.MapDocument("CURRENT"), out_path, "PAGE_LAYOUT")

注意事项:其中 in_fc 为要素图层,in_fld 为字段依赖于要素图层,out_folder 为输出文件夹。

下载地址
用户评论
码姐姐匿名网友 2025-01-15 22:19:18

用不了!运行错误。