文章目录

  • arcpy批处理示例
  • 地理处理工具
  • 工具输入框内自动选择图层和数据
  • 读取XML文件
  • 要素属性操作
  • 复制数据库
  • 处理Excel数据生成多边形
  • 批量将hdf数据转换成tif数据

原文链接:https://hellogis.yuque.com/docs/share/ae7827ab-2906-4f50-9099-b1207a6703cb?# 《示例》

arcpy批处理示例

示例1:对一个gdb数据库进行了遍历,并对遍历的每一个要素类图层进行要素修复

import arcpy
#读取文件
arcpy.env.workspace = r"C:\Users\Administrator\Desktop\H48G026039.gdb"
#取出要素类
fcs = arcpy.ListFeatureClasses()
fcCount = len(fcs)
for fc in fcs: #遍历要素类   arcpy.RepairGeometry_management(fc)print fc
print fcCount

示例2:对一个文件夹下的mxd文件进行遍历,并导出为jpg文件

import arcpy, os, time
path = r'D:\可行性分析' #文件夹路径
res = 100
print '程序开始:' + str(time.ctime())
for afile in os.listdir(path): #遍历文件夹里的文件if afile[-3:].lower() == 'mxd': #文件名后三位为mxdmxd = arcpy.mapping.MapDocument(os.path.join(path,afile))arcpy.mapping.ExportToJPEG(mxd, os.path.join(path,afile[:-3] + 'jpg'), resolution = res)del mxd
print '程序结束:' + str(time.ctime())

地理处理工具

编写.py脚本,并新建工具箱后即可使用
原文:http://blog.csdn.net/sprintwater/article/details/41078225

import sys
reload(sys)
sys.setdefaultencoding('utf-8') #设置编码
import arcpy
#获取工作空间
path = arcpy.GetParameter(0) #获取参数
arcpy.env.workspace = path
#获取该目录下的要素集
fcs = arcpy.ListFeatureClasses()
fcCount = len(fcs)
for fc in fcs: #遍历要素集#设置过程中提示语arcpy.SetProgressorLabel("修复要素类:" + fc +"...")  #要素修复arcpy.RepairGeometry_management(fc)print fc
print fcCount

工具输入框内自动选择图层和数据

http://blog.csdn.net/sprintwater/article/details/41146543

读取XML文件

http://blog.csdn.net/sprintwater/article/details/46851643

要素属性操作

ArcPy对几何对象属性的操作,包括查询、添加、更改、删除
原文:http://blog.csdn.net/sprintwater/article/details/48858427

import time,os
import arcpy  print '程序开始:' + str(time.ctime())
arcpy.env.workspace = r"C:\Users\ljb\Desktop\高程数据"
#输入要素
inFeatures = "TERLK_LN.shp"
#添加一个字段用来标记高程是否可以整除10
fieldName1 = "Mark"
fieldPrecision = 2
fieldAlias = "整除10标记"  #列出所有字段
fieldObjList = arcpy.ListFields(inFeatures)
# Create an empty list that will be populated with field names
fieldNameList = []
# For each field in the object list, add the field name to the
#  name list.  If the field is required, exclude it, to prevent errors
for field in fieldObjList:  if not field.required:  fieldNameList.append(field.name)
print fieldNameList
if fieldName1 in fieldNameList:  arcpy.DeleteField_management(inFeatures, fieldName1)  print"删除已有字段"  #添加字段函数
arcpy.AddField_management(inFeatures, fieldName1, "LONG", fieldPrecision, "", "",  fieldAlias, "NULLABLE")  field1 = "Elev"
field2 = "Mark"  #更新查询
cursor = arcpy.UpdateCursor(inFeatures)
for row in cursor:  # field2 will be equal to field1 multiplied by 3.0  if((int)(row.getValue(field1))%10 == 0):  row.setValue(field2, 1)  else:  row.setValue(field2, 0)  cursor.updateRow(row)
print '程序结束:' + str(time.ctime())

复制数据库

import arcpy
from arcpy import env
import os
# Allow for the overwriting of file geodatabases, if they already exist #
env.overwriteOutput = True
# Set workspace to folder containing personal geodatabases #
env.workspace = arcpy.GetParameterAsText(0)
# Identify personal geodatabases #
for pgdb in arcpy.ListWorkspaces("*", "FileGDB"):  # Set workspace to current personal geodatabase#  print pgdb  env.workspace = pgdb  # Create file geodatabase based on personal geodatabase#  fgdb = pgdb[:-4] + "2.gdb"  arcpy.CreateFileGDB_management(os.path.dirname(fgdb), os.path.basename(fgdb))  # Identify feature classes and copy to file gdb     #  for fc in arcpy.ListFeatureClasses():  print "Copying feature class " + fc + " to " + fgdb  arcpy.Copy_management(fc, fgdb + os.sep + fc)  # Identify tables and copy to file gdb #  for table in arcpy.ListTables():  print "Copying table " + table + " to " + fgdb  arcpy.Copy_management(table, fgdb + os.sep + table)  # Identify datasets and copy to file gdb  # Copy will include contents of datasets#  for dataset in arcpy.ListDatasets():  print "Copying dataset " + dataset + " to " + fgdb  arcpy.Copy_management(dataset, fgdb + os.sep + dataset)

处理Excel数据生成多边形

Python对Excel读写xlrd库
原文:http://blog.csdn.net/sprintwater/article/details/40052675

 import xlrd  import xlwt  import arcpy  xlsPath = r"C:\Users\Administrator\Desktop\Polygon.xls"  data = xlrd.open_workbook(xlsPath)  table = data.sheets()[0]#通过索引顺序获取  cols = table.col_values(5)  nrows = table.nrows  point = arcpy.Point()  array = arcpy.Array()  polygonGeometryList = []  for i in range(1,nrows):  str = table.cell(i,5).value  points = str.split(u';')  for j in points:  xy = j.split(',')  print xy[0]  print xy[1]  print '\n'  point.X = float(xy[0]);point.Y = float(xy[1])  array.add(point)  polygon = arcpy.Polygon(array)  polygonGeometryList.append(polygon)  array.removeAll()  arcpy.CopyFeatures_management(polygonGeometryList, "d:\\polygon.shp")  print 'over'

批量将hdf数据转换成tif数据

arcpy.env.overwriteOupt = 1
arcpy.CheckOutExtension("Spatial")
inPath = r"D:/HDF/"
outPath = r"D:/Output"
env.workspace = inPath
arcpy.env.scratchWorkspace = inPath
hdfList = arcpy.ListRaster('*', 'HDF')
for hdf in hdfList:name = hdf[8:16] + ".tif"data = arcpy.ExtractSubDataset_management(hdf, name, "1")

[ArcPy] 代码汇总相关推荐

  1. 【radar】毫米波雷达相关开源项目代码汇总(工具箱、仿真、2D毫米波检测、融合、4D毫米波检测、分割、SLAM、跟踪)(6)

    [radar]毫米波雷达相关开源项目代码汇总(工具箱.仿真.2D毫米波检测.融合.4D毫米波检测.分割.SLAM.跟踪)(6) Toolbox pymmw https://github.com/m6c ...

  2. 【机器学习】特征提取代码汇总

    特征提取代码汇总 import jieba from sklearn.datasets import load_iris from sklearn.feature_extraction import ...

  3. flink sql的datastream与dataset初始化代码汇总

    flink sql 数据类型 初始化代码汇总 dataset ExecutionEnvironment env = ExecutionEnvironment.getExecutionEnvironme ...

  4. 算法python知乎_20个算法李小文知乎文章与Github代码汇总

    李小文知乎文章与Github代码汇总 共建立了2个Github项目,实现了20个算法,写了12篇知乎文章. ---------------------------------------------- ...

  5. CV Code | 本周新出计算机视觉开源代码汇总(南理SGE 和Intel的实时动作识别很吸引人)...

    点击我爱计算机视觉标星,更快获取CVML新技术 本周新出的计算机视觉代码不是很多,但都是精品. 出自南理工的空域组增强(SGE)网络结构在图像分类和目标检测任务中均表现出一致的有效性,强烈推荐大家关注 ...

  6. CV Code | 本周新出计算机视觉开源代码汇总(含目标跟踪、语义分割、姿态跟踪、少样本学习等)...

    点击我爱计算机视觉标星,更快获取CVML新技术 刚刚过去的一周出现了很多很实用.有意思.很神奇的CV代码. 比如大家期待的SiamRPN++算法,官方终于要开源了. 阿里MNN成为移动端网络部署的新选 ...

  7. CV Code | 本周新出计算机视觉开源代码汇总(含自动驾驶目标检测、医学图像分割、风格迁移、语义分割、目标跟踪等)...

    点击我爱计算机视觉标星,更快获取CVML新技术 刚刚过去的一周含五一假期,工作日第一天,CV君汇总了过去一周计算机视觉领域新出的开源代码,涉及到自动驾驶目标检测.医学图像分割.风格迁移.神经架构搜索. ...

  8. CV Code | 本周新出计算机视觉开源代码汇总(语义分割、目标检测、超分辨率、网络结构设计、训练策略等)...

    点击我爱计算机视觉标星,更快获取CVML新技术 CV君汇总了过去一周计算机视觉领域新出的开源代码,涉及到图像增广.医学图像分割.图像恢复.目标检测.语义分割.超分辨率.显著目标检测.轻量级网络结构设计 ...

  9. C#ADO.NET操作数据代码汇总

    C#ADO.NET操作数据代码汇总 一.用SqlConnection连接SQL Server 1..加入命名空间 using System.Data.SqlClient; 2.连接数据库 SqlCon ...

最新文章

  1. [转]Format a ui-grid grid column as currency
  2. 第15章 关于本软件
  3. java 数组的方法_数组常用方法
  4. 关于压缩工具 7z(7-zip) 如何设置压缩算法(选项 -m 的解读)
  5. 带日期的bean转为json(bean-JSON)
  6. yang模型中rpc_领域驱动模型(DDD)设计讲解
  7. 如何把项目改成微服务项目_【日记】148微服务项目第18天
  8. CSS 与 HTML5 响应式图片
  9. Missing iOS Distribution signing identity问题解决
  10. 从应届技术男到百度VP,这是低调到没百科的吴海锋首次受访
  11. 撞击测试软件,碰撞检测用什么软件?你会用Navisworks做碰撞检测吗?
  12. 翻译:如何理解K-means的缺点
  13. 2017年十大移动应用开发的测试工具
  14. 【外文文献检索与下载方法】
  15. WordPress URL rewrite
  16. python处理excel数据计算_Python处理Excel数据
  17. a59s刷机包卡刷 oppo_OPPOA59S刷机包_线刷包_救砖包_官方ROM包_固件包下载- 线刷宝ROM中心...
  18. openwrt热插拔HotPlug
  19. 云主机WINDOWS系统创建FTP服务器227或200错误处理
  20. 应用计算机测定线性电阻伏安特性实验报告,电阻伏安特性曲线实验报告.docx

热门文章

  1. 如何将xml格式转换为yolov5所需的txt格式
  2. 解决:Error: geom_point requires the following missing aesthetics: y Run `rlang::last_error()`
  3. vscode代码自动格式化快捷键
  4. 罗克韦尔L85E plc程序下载和上载
  5. 分布式数据库系统之【结构】
  6. 计算最大公约数(GCD)
  7. FTPS FTPES
  8. Echarts3通过ajax动态获取数据,30秒定时图表数据,设置图表线条颜色和粗细
  9. Springboot 国际化语言(浏览器切换)
  10. jsTree API文档(中文)