什么是 arcpy.mp?
Arcpy.mp 是一个作为 ArcPy 站点包一部分的 Python 子模块。随 ArcGIS Pro 一同安装,并对所有许可均可用。其设计初衷主要是用于操作现有工程 (.aprx) 和图层文件 (.lyr 或 .lyrx)的内容。此外,还提供自动执行导出和打印的功能。Arcpy.mp 可用于自动执行地图生产,同时因其包含导出、创建和管理 PDF 文档的功能,而为构建完整地图册所必需。
通过描述 Arcpy.mp 执行的一些方案来了解其功能将会更容易些。以下是 arcpy.mp Python 脚本可完成的众多方案中的一小部分:
- 创建有关工程中所含信息(如图层及其数据源、数据源损坏的图层、显示的数据范围或布局元素属性)的报告。
- 更新、修复或替换地图或图层文件中的图层数据源。
- 查找并替换工程内所有布局的文本字符串。
- 自动在线执行共享要托管在组织中的工程项。
- 使用地图导出命令批量创建地理数据,例如,由地图中的一列要素驱动的一系列 GeoTIFF 图像。
- 构建多种 PDF 地图册,例如,参考地图册或具有标题页、多个地图页以及支持内容(如表格式报表和联系人列表)的众多附加页的专题地图册。
arcpy.mp 面向哪些用户? 构建 arcpy.mapping 的初衷何在?
Arcpy.mp 专门面向专业的 GIS 分析人员以及开发人员而构建。以前,以上列出的方案必须使用 ArcObjects 来完成,然而事实多次证明,对于普通 GIS 专业人员而言,该编程环境非常难学。Arcpy.mp 是一种粗粒度对象模型,即函数的设计原则是单个 arcpy.mp 函数可代替多行 ArcObjects 代码。以下简单示例显示了如何使用 arcpy.mp 通过仅仅三行代码引用工程中现有布局并将其导出至 PDF 文档。
import arcpy
aprx = arcpy.mp.ArcGISProject(r"C:\Projects\YosemiteNP\Yosemite.aprx")
lyt = aprx.listLayouts("Main Attractions*")[0]
lyt.exportToPDF(r"C:\Project\YosemiteNP\Output\Yosemite.pdf", resolution = 300)
第一行将加载 arcpy 模块,这对于所有运行在 ArcGIS Pro 之外的脚本均是必需的。第二行将引用磁盘上的 ArcGIS Pro 工程。第三行将查找名称以词 Main Attractions 开头的第一个布局(使用从零开始的索引)。第四行代码将布局导出至输出分辨率为 300 的 PDF。
入门的最佳方法
- 参考 arcpy.mp 教程入门。
- 查看 arcpy.mp 指南
- 如果您使用较早版本的 arcpy.mapping 软件,而现在要使用 ArcGIS Pro,请查看从 arcpy.mapping 迁移至 ArcGIS Pro。
- 查看按字母顺序排序的 arcpy.mp 函数列表和按字母顺序排序的 arcpy.mp 类列表以了解可用的功能。在使用 arcpy.mp 编写脚本时,可将这些资料打印出来作为参考。
- 所有 arcpy.mp 函数和类的帮助主题都有详细的说明,并提供了可直接复制并粘贴到 Python 窗口中的代码片段示例。