ArcPy中mapping常见函数及用法1
arcpy的mapping模块常见属性方法总结
1.如何获取当前地图文档:
方式:mxd = mapping.MapDocument("CURRTENT")引用本地或者网络文档(arcpy.mapping.Document("文件路径"))
2.如何获取当前图层的图层列表:
Eg:import arcpy.mapping as mapping
mxd = mapping.MapDocument("CURRENT")
layers = mapping.ListLayers(mxd)
for lys in layers:
print(lys.name)
3. 如何限制图层列表:
Eg: import arcpy.mapping as mapping
mxd = mapping,.MapDocument("CURRENT")
# 获取地图文档的数据框列表,搜索"数据框_name"的指定数据框
for df in mapping.ListDataFrames(mxd):
if df.name =="数据框_name":
layers = mapping.ListLayers(mxd, 'Burg*', df)
# for 循环,输出地图文档中的每个图层名称
for layer in layers:
print(layer.name)
4.如何缩放到图层:
DataFrame.zoomToSelectedFeatures(): 缩放至所有选择要素的范围(来自数据框的所有图层)该方法就是缩放至所选要素
getSelectedExtent(): 该方法是Layer对象的,也是缩放至所选记录的范围。并且返回一个Extent()对象,可以作为参数传给DataFeame.panToExtent()方法。
Eg: import arcpy.mapping as mapping
mxd = mapping.MapDocument("CURRENT")
df = mapping.ListDataFrames(mxd,"数据框_name")[0]
layer = mapping.ListLayers(mxd,"数据框中图层_name*",df)[0]
df.extent = layer.getSelectedExtent()
5.如何改变地图范围:
DataFrame 类的extent属性可以设置地图的范围
Eg: impot arcpy.mapping as mapping
mxd = mapping.MapDocument("CURRENT")
for df in mapping.ListDataFrames(mxd):
if df.name == '数据框_name':
layers = mapping.ListLayers(mxd, '数据框中指定图层_name',df)
for layer in layers:
query in layers:
layer.definitionQuery = query
df.extent = layer.getExtent()
6.添加图层和插入图层:
添加图层:df = mapping.ListDataFremes(定义的地图文档量)[0]
layer = mapping.Layer(r"引用图层文件.lyr文件的路径")
mapping.AddLayer(df, layer, "AUTO_ARRANGE")
插入图层: df = mapping.ListDataFrames(mxd, "数据框_name")[0]
refayer = mapping.Layers(mxd, "数据框中指定图层_name", df)[0]
inseryLayer = mapping.Layer(r"待插入的图层路径")
mappin.InsertLayer(df, refLayer, insertLayer, "BEFORE或者AFTER")
7.如何查找地图文档或者图层文件丢失的数据源:
Eg: mxd = mapping.mapDocument(r"地图文档的路径")
listBrokenDS = mapping.ListBrokenDataSources(mxd) # 获取丢失数据源的图层列表
for layer in listBrokenDS:
print(layer.name)
8.使用MapDocument.findAndReplaceWorkspacePaths()查找全局,用以查找丢失的数据源:
mxd.findAndReplaceWorkspacePaths(r"数据源路径1", r"数据源路径2")
mxd.saveAcopy(r"保存地图文档路径")
拓展:MapDocument.replaceWorkspacex()类似上法,本方法不允许用户从一种工作空间类型转换成另一种工作空间(上法则可以)
ArcPy中mapping常见函数及用法1的更多相关文章
- 我的Keras使用总结(5)——Keras指定显卡且限制显存用量,常见函数的用法及其习题练习
Keras 是一个高层神经网络API,Keras是由纯Python编写而成并基于TensorFlow,Theano以及CNTK后端.Keras为支持快速实验而生,能够将我们的idea迅速转换为结果.好 ...
- Java中的Socket的用法
Java中的Socket的用法 Java中的Socket分为普通的Socket和NioSocket. 普通Socket的用法 Java中的 ...
- ecshop中foreach的详细用法归纳
ec模版中foreach的常见用法. foreach 语法: 假如后台:$smarty->assign('test',$test); {foreach from=$test item=list ...
- matlab中patch函数的用法
http://blog.sina.com.cn/s/blog_707b64550100z1nz.html matlab中patch函数的用法——emily (2011-11-18 17:20:33) ...
- C#中timer类的用法
C#中timer类的用法 关于C#中timer类 在C#里关于定时器类就有3个 1.定义在System.Windows.Forms里 2.定义在System.Threading.Timer类 ...
- C#中dynamic的正确用法
C#中dynamic的正确用法 http://www.cnblogs.com/qiuweiguo/archive/2011/08/03/2125982.html dynamic是FrameWork4 ...
- C++中typename关键字的用法
我在我的 薛途的博客 上发表了新的文章,欢迎各位批评指正. C++中typename关键字的用法
- Guava中Predicate的常见用法
Guava中Predicate的常见用法 1. Predicate基本用法 guava提供了许多利用Functions和Predicates来操作Collections的工具,一般在 Iterabl ...
- C++中const 的各种用法
C++中const 关键字的用法 const修饰变量 const 主要用于把一个对象转换成一个常量,例如: ; size = ; // error: assignment of read-only v ...
随机推荐
- ionic actionsheet在android下的样式问题
https://forum.ionicframework.com/t/actionsheets-android-ugly-styling-need-help/18462/10 想要修改ionic的样式 ...
- Clion使用MinGW编译好的boost库
MinGW编译Boost库可以参考我之前写的编译Boost的文章. 以下是cmake链接boost静态库的配置: cmake_minimum_required(VERSION 3.8) project ...
- Mac下的Chrome或Safari访问跨域设置,MBP上使用模拟器Simulator.app或iphone+Safari调试网页
Mac下的Chrome或Safari访问跨域设置: mac下终端启动Chrome $ open -a Google\ Chrome --args --disable-web-security 或 /A ...
- Springboot+Mybatis整合PageHelper
一.全部的gradle引入 // https://mvnrepository.com/artifact/com.github.pagehelper/pagehelper-spring-boot-sta ...
- SNF软件开发机器人平台2018-发展升级履历-零编程时代
一.SNF软件开发机器人产品白皮书 二.SNF开发机器人教程:链接:https://pan.baidu.com/s/1Qpomg11c_1b1NKY5P7e4Bw 密码:jwc3 三.SNF软件开发机 ...
- python和C++联合调试
python可以利用SO的方式去调用C++中的函数,但是需要一种调试方案来进行python和C++的联合调试,效果是直接在c++代码中打断点,然后python在进行c++so调用的时候,直接进入到断点 ...
- Atitti 互联网时代三大竞争战略 ——平台化战略 锚”战略、价值领先战略
Atitti 互联网时代三大竞争战略 ——平台化战略 锚”战略.价值领先战略 美国著名管理学家迈克尔•波特在<竞争战略>一书中提出了集中化战略和差异化战略.成本领先战略三种基本竞争战略,从 ...
- pandas DataFrame(5)-合并DataFrame与Series
之前已经学过DataFrame与DataFrame相加,Series与Series相加,这篇介绍下DataFrame与Series的相加: import pandas as pd s = pd.Ser ...
- 【资料下载区】【GMT43相关代码、资料下载地址】更新日期2017/06/28
[GMT43相关文档][更新中...] GMT43原理图(PDF)下载GMT43说明书(PDF)下载GMT43机械结构尺寸(PDF)下载 [GMT43相关例程代码][ARM][更新中...] 基于HA ...
- Hbase:原理和设计
转载自:http://www.sysdb.cn/index.php/2016/01/10/hbase_principle/ ,感谢原作者. 简介 HBase —— Hadoop Database的简称 ...