首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

历遍地图文档并打印图层文件名

R

ECORD

记录

这是一个简单的脚本操作,主要用来显示某地图文档中的图层名称。其原理是引用本地磁盘上的地图文档,然后获取地图文档中的图层列表。需要注意的是接下的实验是在Window7系统,2.7版本的Python,10.3版本的ArcGIS进行的。

实验事例:

一、准备需要操作的地图文档(*.mxd),实验的是pname.mxd。

二、打开Python自带的IDE集成开发工具,打开shell后直接Ctrl+N快捷键创建新的file来写代码,本实验不是在交互式下操作的。

代码:

#给引用的arcpy.mapping改名为mapping

import arcpy.mapping as mapping

#引用本地路径的pname.mxd文档并赋值给mxd变量

mxd=mapping.MapDocument(r"J:\text\printlayername\pname.mxd")

#获取mxd文档中的图层名称

LName=mapping.ListLayers(mxd)

for lyn in LName:#历遍所有图层名称

print(lyn.name)#打印图层名称

运行结果:

知识小点:

Mapping.MapDocument(path or "current")用于访问地图文档。其使用方法分2种。一种是以current作为参数,该方法仅在ArcMap应用程序内部使用(提示:ArcCatalog下不能使用),引用ArcMap当前活动的文档。另一种是引用电脑本地特定位置的文档。

参数:path完整的引用对象路径或者关键字current。

代码演示:

#用as语句把arcpy.mapping改名mapping

import arcpy.mappingas mapping

#引用b.mxd文档

mxd=mapping.MapDocument(r"J:\text\b.mxd")

#打印b.mxd文档的地图文档标题

print(mxd.title)

Mapping.ListLayers(map_document,,)返回在map文档中存在的图层对象的list列表。

参数:map_document引用mxd文档变量对象。

Wildcard通配符可选参数若地图文档中存在多个数据框,则可以通过通 配符来查找相应的数据框名称,若不填则系统默认第一个数据框。

data_frame是一个可选参数,它是引用ListDataFrames()的赋值给的变量 对象。

代码演示:

#引用wx.mxd文档

mxd=mapping.MapDoucment(r"J:\text2\wx.mxd")

#获取mxd文档中的图层名称

lyer=mapping.ListLayer(mxd)

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180111G03LQD00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券