arcpy
yGIS
这个作者很懒,什么都没留下…
展开
-
python学习&元组
很久之前写过一篇博客,关于使用到了元组方面的内容。参考了相关的资料,元组经过初始化后就不能再修改了。和列表声明相类似,只不过元组使用了小括号将元素组装起来。元组的声明使用小括号构建元素。注意:元组可以将不同的数据类型整合到一起,比如下面的第三条数据中就是将字符、数字、布尔类型的数据放到一起。元组的访问可以使用下标对元组进行访问,注意下标可以访问多个元素,也可访问一个元素。还要...原创 2019-05-20 22:51:08 · 243 阅读 · 0 评论 -
(三十七)arcpy开发&数据重新分类
今天我们要学习的是,使用我们的数据对某个字段进行分类,有点类似分级渲染的感觉。如下图所示的数据。现在对字段BOU2_4W_ID依次以等于1,为A类,在1至2000为B类,2000至4000为C类,4000至6000为D类,大于6000为E类。在这个过程中,我们会用到字段的创建,以及遍历,和更新。好了,下面是我们的实现代码。#encoding: utf-8import arcpy...原创 2019-05-07 20:55:26 · 1206 阅读 · 0 评论 -
(四十)arcpy开发&多幅影像批量拼接
今天我们来学习一下,使用arcpy实现多幅影像批量拼接。首先在这里,大家需要知道使用python的for循环,与数组的遍历。在python有这样的遍历的方式。方式一:whu_gis = ["大地测量","摄影测量","地理信息系统"]for itemGis in whu_gis: print itemGis#****运行结果*****#大地测量#摄影测量#地理信息系统...原创 2019-05-14 22:05:37 · 2945 阅读 · 1 评论 -
(三十八)arcpy开发&读取txt坐标数据,并创建面shapefile
之前有小伙伴说,他有坐标数据,想生成shapefile数据。后面我联系了他,但一直没有给数据,所示只好作罢。最近由于项目的需要,又有这样的需求。那么我这里有一个txt文件,都是坐标数据,如下图所示,其中每一行对应一个面。现在需要使用arcpy将这些数据创建成面。在这其中,需要使用到的是,逐行读取txt文件,然后分割字符。注意这里使用的逗号。那么我们在使用arcpy的时候,会去创建一个投影信...原创 2019-05-09 19:48:36 · 4262 阅读 · 1 评论 -
(四十二)arcpy开发&shapefile矢量数据遍历、求交、与属性更新
最近看到群里有小伙伴有这样的需求,大概意思是这样的。他有一个面数据,这么面数据有很多条记录(polygon),我们姑且把这个面叫A数据,还有另外一个B数据,也是有很多条记录(polygon)。现在需要A数据中每一条记录与B面求交,然后找出所有的相交面,在这些相交面中取面积最大者的一些属性填到A面的那条记录的属性表中,基本上流程就走完了。不知道我需求说明讲得清楚么。好了,下面我把数据拿上来。A数...原创 2019-05-19 17:15:07 · 3022 阅读 · 2 评论 -
python学习&列表
列表相关信息列表是python的一种数据类型,有点像java、C#的数组。列表由多个元素组成,这些数据可以是数字、布尔、字符、以及其他类型的数据。列表的使用下标来访问,其实起始下标为0,依次可以访问每一个元素。注意:访问的索引必须在列表的范围内,否则会报出现超出列表索引的错误。下面我们来测试一下列表相关信息。列表是一对中括号声明起来的对象。列表的增加、删除使用append来追加元素...原创 2019-05-19 12:27:46 · 302 阅读 · 0 评论 -
(三十六)arcpy开发&计算polygon中心点、创建点shapefile数据
这次我们来学习一下,关于为polygon面计算几何中心,我们指定这个中心为点对象,然后将polygon中所具有的属性一起赋值给这些点对象,最后创建相应的shapefile数据。在这个例子中,将会用到字段的创建,要素创建,游标的创建。首先我们做一份数据,如下图所示。由几个polygon组成,相应的我们为每个polygon面要素添加属性字段,以及一些对应的值。来看一下编码,首先是读取pol...原创 2019-04-25 22:24:40 · 2910 阅读 · 0 评论 -
(三十二)arcpy开发&读取shapefile文件信息,并写入txt文件
这次我们又来学习一下arcgis的python脚本开发。今天我们要学习的这个例子是利用arcpy读取某一工作空间下面的所有shapefile数据,然后将读到的矢量shapefile数据一些信息,写入到txt文件中。在这里使用了,arcpy.ListFeatureClasses函数来获取目录下所有的要素类。arcpy.Describe获取文件的描述信息,这里为什么不指定shapefile,是因为...原创 2019-04-09 20:31:23 · 3479 阅读 · 0 评论 -
(三十四)arcpy开发&gdb、shapefile创建与投影定义,字段创建
今天我们来学习这个例子是创建一个gdb、然后在该gdb目录下创建一个shapefile文件,再为这个矢量文件定义投影,相应的添加到字段。这过程中使用的函数有arcpy.CreateFileGDB_management、arcpy.CreateFeatureclass_management、arcpy.Project_management、arcpy.AddField_management。最后创建...原创 2019-04-16 05:50:09 · 1104 阅读 · 0 评论 -
(三十三)arcpy开发&三调锐角检测工具开发
arcgis开发python视频教程https://edu.csdn.net/course/detail/25535最近在群里看到了小伙伴们在做三调,有需要锐角检测这样的工具。于是试着写了一个,这是利用arcpy写的一个锐角检测工具,最后做成界面如下图所示。那么代码是如何实现呢。首先是对每个面进行遍历,分别找出面中的顶点。对顶点进行编号,然后就是利用平面向量乘积等数学相关内容,来计...原创 2019-04-11 20:50:25 · 3305 阅读 · 3 评论 -
(三十一)arcpy开发&面的创建
本次我们来学习一下,关于使用arcpy来创建一个面,那么我们创建的这个面只有四个顶点,是一个方形的面。定义的投影为WGS84。创建要素面之前,我们必须将我们的工作空间给加载起来,然后就是链接我们需要创建的shapefile面名称。接着使用arcpy.Point来创建点对象,创建完点对象后,依次将这些点数据加入到arcpy.Array序列中。再使用arcpy.Polygon载入之前创建的点序列。最后...原创 2019-03-31 21:15:47 · 2309 阅读 · 1 评论 -
Cesium开发源码分析&QuantizedMesh地形数据解析过程
来解析一下qumesh数据格式,首先我们来看源代码,其中是如何根据摄影机高度,确定一张切片,然后生成地形数据的。下面是创建地形代码。 function createQuantizedMeshTerrainData(provider, buffer, level, x, y, tmsY, layer) { var littleEndianExtensionSize = laye...原创 2019-03-18 22:14:48 · 2424 阅读 · 0 评论 -
【ArcGIS制图】&利用字段计算器编写脚本,对数据分类
大家是否记得之前,写过一篇关于使用python脚本对数据进行分类的例子,如果不清楚的话,可以查阅下面的链接。https://blog.csdn.net/u010608964/article/details/89929059在上面的例子中,需要对数据进行读取,然后利用更新游标对属性表遍历,按照我们的逻辑对数据进行分类,然后再更新分类字段。而今天我们使用的是ArcGIS Desktop的字段计...原创 2019-05-15 21:50:09 · 4439 阅读 · 0 评论 -
python学习&流程控制语句if、else、elif
ifif用来判断某种条件是否满足,如果满足,则执行if后面紧跟的语句块.比如下面的语句。因为x是为1,那么x<5这个条件是成立的。就会帮我们打印x,而x<0这个条件是不成立的,所以不会给我们打印x。我们来看一下if的流程图elseelse是跟着if控制,当if不成立的时,那么就执行else语句.比如上面的x=1,可以使用else来执行当x<5不成立的情...原创 2019-05-25 14:36:47 · 4291 阅读 · 0 评论 -
(四十三)arcpy开发&数据分割、逐条导出数据
今天看到群里有小伙伴,有这么一份数据,他需要对数据逐一,即按每一条数据导出来。这个属性表中,有多少条记录,就能导出多少条shapefile数据。其实这样的功能在之前的博客中就有提到过了,那么其实在ArcGIS Desktop中是有这么的一个工具来实现的,在你的分析工具中有分割【split】可用来实现这样的功能。在开始之前我想着要使用代码来实现,是这样的思路:先遍历属性数据,然后创建属性数据,再导出...原创 2019-05-21 22:33:42 · 1807 阅读 · 1 评论 -
python学习&字典
这几天都比较忙,在搞android开发,接着就天天码代码,自然就是很晚。抽点时间现在来看一下python方面的基础,字典。字典字典是一种可变容器模型,可以为任意类型。字典中由键和值组成,中间冒号隔开。使用冒号隔开,这样就可以一一的创建好一个对象,对象之间使用逗号隔开。使用arcmap来创建一个对象。创建字典可以为多种对象类型,如下图所示。就有整数类型,字符串类型。字典的访问...原创 2019-06-02 23:06:44 · 265 阅读 · 0 评论 -
(四十七)arcpy开发&UpdateCursor更新
UpdateCursor游标用于对记录的更新,当然也可以用于数据的删除。我们只要正确的读取好数据后,获取游标,然后在设置我们需要取出的字段,当然也可以设置过滤条件。最后使用updateRow函数来更新即可。现在我们来做一个测试案例。如下图所示,是我们准备好的一份测试数据。现在我们设置要获取字段TDYT,也可同时获取其他的数据。我们在这里做这样的操作,如果TDYT这个字段里面的数据值为空,那...原创 2019-05-29 19:49:44 · 5222 阅读 · 2 评论 -
python学习&字符串
定义字符串的定义,python中使用双引号(""),或者单引号('')用于字符串的声明。访问对于整个字符串而言,可以拆分为一个一个单个字符,组成的数组。比如下面的字符。str_array="this is string of str_array"使用str_array[0]则访问第一字符:t,而使用str_array[0:4]则访问了:this,而如果想访问整个字符,可以使用这样的...原创 2019-05-18 14:57:06 · 272 阅读 · 0 评论 -
(四十四)arcpy开发&点(point)、线(polyline)、面(polygon)游标(Cursor)中的令牌
在操作属性表中,无论是使用搜索SearchCursor,还是UpdateCursor,抑或其他的Cursor,都或多或少的用到令牌(形如用SHAPE@来做标记),比如下面的代码。令牌在我看来是对操作属性类和表的一种返回标记,你比如说返回记录的几何信息,xy坐标信息,质心等。而esri公司之所以提出了令牌是为改善操作属性表性能,让查询更加优化,速度得以提高。按照相关的资料,我们可以知道。在操...原创 2019-05-22 22:24:27 · 3577 阅读 · 0 评论 -
(四十五)arcpy开发&字段列表,字段创建、与删除
似乎每一个地理制图工作人员,在制作数据时候,都会接触到属性表shapefile数据,而我们建表的目的是为了能够记录我们的信息,为了能够标记我们需要的特定信息,我们往往需要建立不同类型的字段来标记数据值。那么arcpy也是提供字段的相关操作接口(api),首先我们要说的是字段列表。如下图所示。一共有四个字段,分别是FID、Shape、Id、DLTB,字段是一个列表对象。我们使用arcpy来...原创 2019-05-26 22:26:34 · 3415 阅读 · 0 评论 -
(三十九)arcpy开发&利用字段映射(FieldMapping)求多个字段的平均值
今天我们来学习一下关于字段映射方面的知识,来看一下esri关于字段映射的介绍。FieldMappings对象是一组FieldMap对象,它用作执行字段映射的工具的参数值,如Merge。要处理这些对象,最简单的方法就是先创建FieldMappings对象,然后通过添加要组合的输入要素类或表对FieldMap对象进行初始化。提供了所有输入后,FieldMappings对象将为所有...原创 2019-05-12 22:26:02 · 3296 阅读 · 1 评论 -
(四十一)arcpy开发&创建gdb,复制shapefile与更改属性表
今天的这个例子是利用arcpy来创建一个gdb,然后将一个shapefile文件复制到该gdb中,最后我们还会更新该属性表的一些数据。实现这个例子,你将会使用到创建gdb函数,CreateFileGDB_management。临时图层复制函数,MakeFeatureLayer_management。将数据复制到到gdb中,FeatureClassToGeodatabase_conversion。以...原创 2019-05-16 21:31:51 · 3414 阅读 · 1 评论 -
python学习&while、for、continue、break——
接着上面的while和for语法,这里我们继续许西continue、break。本来说,后面的这两个关键字和前面的两个关键字一起讲完的,内容有点多,没有更新完。那么今天来学习这两个关键字。continue:这个关键字可以使用与while和for中,经过遍历后,如果在某种满足我们条件下,继续执行下次遍历,比如我们在获取arcgisdesktop数据视图左边的图层列表数据中,有某个图层名称...原创 2019-05-25 21:22:50 · 246 阅读 · 0 评论 -
(三十)arcpy开发&pycharm导入arcpy
在文章开始之前,大家可以参考学习视频。https://edu.csdn.net/course/detail/25535首先,大家需要安装好pycharm,使用社区版的pycharm就足够了。在编写arcpy脚本之前我们需要将arcpy环境设置好。下面我们来设置一些arcpy需要的环境。 从创建工程开始路径设置 工程导入arcpy站点包,首先我们使用pycharm新创建一个工程...原创 2019-03-17 21:09:54 · 18425 阅读 · 3 评论 -
Arcpy开发学习资源一览表
这是作者学习arcpy脚本园地,同时会将写的博文推送到公众号,可以微信扫一些二维码。关注公众号,或者加入arcpy开发qq学习群:487352121。当然也可以通过下面视频来学习arcpyhttps://edu.csdn.net/course/detail/25535 ...原创 2019-03-17 20:25:47 · 3172 阅读 · 0 评论 -
(十二)arcpy开发&利用arcpy实现在arcgis中对要素数据某一个字段值分类分割shapefile数据输出
今天我们要学习这个功能是利用arcpy在arcgis实现对某一个要素属性数据shapefile的某一字段进行数据的筛选。实现的过程使用了SelectLayerByAttribute_management函数将该字段中的某一个字段值分出来,然后将数据另存为shapefile文件。我们来看一下这里的测试功能,我们对如下图的数据操作,从中可以看出属性记录一共有800多条,现在对FID字段进行分类选择,那...原创 2019-02-11 21:05:14 · 4946 阅读 · 1 评论 -
(十六)arcpy开发&利用arcpy在arcgis中创建gdb文件
本次我们学习的是如利用arcgis提供的python接口arcpy在arcgis中创建gdb文件。在代码中,多处利用检查机制,首先检查路径传入的路径是否存在,如果传入的需要创建的gdb文件已经存在,那么代码会说明已经存在了。当路径已经创建好后,接下来要创建的gdb文件检查是否创建好了。接下来我们看一下实现的具体代码。#coding=utf-8import arcpyimport osi...原创 2019-02-17 19:35:19 · 4902 阅读 · 0 评论 -
(十五)arcpy开发&利用arcpy将csv点数据转shapefile
本次我们来学习一下在arcpy中如何将.csv格式的数据转为shapefile。其中csv为点数据,这些点数据都是如下图所示。现在利用arcpy首先要定义要投影,然后创建好字段。在遍历.csv文件。将数据填入到shapefile文件中。具体的实现代码如下图所示。import arcpy, systry: path = "C:\\Users\\qin\\Desktop\\...原创 2019-02-17 14:04:49 · 3662 阅读 · 5 评论 -
(十四)arcpy开发&利用arcpy遍历shp文件并获取要素记录数
这是一个小实例程序,首先是遍历某路径下所有.shp文件,然后创建临时图层。然后遍历临时图层获取相应的属性记录数。最后的代码如下所示。import osimport arcpydirectory = r"C:\Users\qrb_PC\Desktop\fast\shp"for root, dirs, files in os.walk(directory): ct = 0 ...原创 2019-02-16 09:21:55 · 8582 阅读 · 2 评论 -
(十一)arcpy开发&利用arcpy实现在arcgis中要素类的遍历与记录数获取
首先小伙伴们,可以参考学习视频。https://edu.csdn.net/course/detail/25535在arcpy中可以使用GetCount_management,该函数可以返回表记录数,但是需要注意的是该返回结果返回类型为Result类型,具体使用type函数打印的结果如下所示。type a:<class 'arcpy.arcobjects.arcobjects.Re...原创 2019-02-09 13:51:48 · 5171 阅读 · 0 评论 -
(十)arcpy开发&&设置arcpy参数数据类型
在arcgis的arcpy二次开发中,往往我们需要设置工具的数据类型。如下图的Add Geometry Attributes工具中Input Features选项。在这里我们需要设置的数据类型为矢量属性数据。又如下面的工具Points to line。在Input Features中数据类型可以是Feature class、Layer file 、All Fitters List...原创 2019-01-30 06:41:07 · 4650 阅读 · 0 评论 -
(九)arcpy开发&arcpy开发中获取工具箱中的参数
平时制图中用到的arcgis工具箱,或多或少会有各种各样的参数。经常在arcpy的二次开发中会遇到参数的获取。比如之前写的这段代码中。import arcpyfrom OrderByID import excuteclass Toolbox(object): def __init__(self): """Define the toolbox (the nam...原创 2019-01-29 20:27:28 · 2016 阅读 · 0 评论 -
arcgis中切片缓存(方案)的制作
在发布地图服务的时候,我们需要针对我们的数据制作一个切片缓存(方案)。在arcgis中切片缓存(方案)格式为.xml。下面我们来看一下在arcgis中是如何制作切片缓存(方案)。首先需要将我们的数据另存为一个.mxd,然后在arcgis的工具箱如下图所示,依次选择弹出如下图的设置框。我们这里一一对其进行设置。首先选择mxd文件的路径,然后设置Number of Scales,我们这里设...原创 2019-01-29 16:36:20 · 6948 阅读 · 0 评论 -
(八)arcpy开发&利用arcpy在arcgis中创建属性表
今天我们来学习一下,关于在arcgis中,使用arcpy来创建属性表。其中使用到的函数为CreateFeatureclass_management,在使用该函数创建属性表需要注意的是需要定义好投影,我们来看一下实现的代码。geometry_type = "POLYGON"spatial_reference = arcpy.SpatialReference(102100)featu...原创 2019-01-29 15:57:38 · 2831 阅读 · 0 评论 -
利用arcpy实现在arcgis中对图斑至上而下、从左到右编号
首先小伙伴们可以参考arcpy开发学习视频。https://edu.csdn.net/course/detail/25535最近做三调项目中,有小伙伴有这样的需求,需要对图斑至上而下,从左到右进行编号。看了网络上相关的资料,有对图斑(polygon)面求出extend,xmin、ymax值,然后导出数据,按照对xmin进行升序排列、对ymax进行降序排列,然后按照自己项目的需要对图斑进行编...原创 2019-01-05 18:23:45 · 4610 阅读 · 2 评论 -
(七)arcpy开发&&利用arcpy解析json生成shp数据
最近项目有这样的需求,采集的是在android平台上开发的平板app的上获取的图形数据。我们采集了点(point),线(polyline),面(polygon)数据,然后利用arcgis for android的api接口将这些图形数据转为json以string类型数据存储到splite数据库中。外业采集完后,再转为相应的shapefile数据,那么现在遇到的问题是如何将json格式的数据转为sh...原创 2018-12-12 21:47:45 · 1611 阅读 · 1 评论 -
(六)arcpy开发&利用arcpy在arcgis中批量将hdf数据转tif数据(python文件的变量,数据转换)
首先,小伙伴们可以参考学习视频。https://edu.csdn.net/course/detail/25535本次我们来学习一下关于使用arcpy将hdf转tif数据。hdf格式数据还是常见的。那么什么事hdf格式的数据呢,来看一下相关资料。相关大概资料HDF(Hierarchical Data File)是美国国家高级计算应用中心(National Center for Super...原创 2018-11-11 22:37:09 · 11395 阅读 · 13 评论 -
(十九)arcpy开发&利用arcpy实现在arcgis中对某字段值非指定值统计验证
本次我们学习的是关于如何利用arcpy实现,给定一个字段名,和一些给定关于该字段名一些具体值。然后统计关于该字段名中不是在给定具体值中其他列值。具体来说就是,我们现在有一个字段名GBCODE,然后里面有很多值,你比如说61030,61031,61032、61033,61034等等,而现在呢,我们需要统计除了61030,61031,61032其他值的数目。那么如和实现呢,首先我们需要验证一些输入的字...原创 2019-02-23 10:56:59 · 1447 阅读 · 0 评论 -
(二十)arcpy开发&利用arcpy实现对要素shapefile数据的字段数据值空和空白的统计
上一篇博客https://blog.csdn.net/u010608964/article/details/87889528是关于对字段值不在指定数值内的统计。而这次我们学习的是关于对指定字段名称,然后统计该字段名称中空和空格值的统计。其实现原理和上面的博文是一致的。现在来看一些具体的实现代码。#coding=utf-8import osimport arcpyimport sys...原创 2019-02-23 11:31:42 · 1628 阅读 · 0 评论 -
(二十一)arcpy开发&&经常使用的信息提示类
在arcpy开发中,我们会使用到关于信息提示,现在为大家提供一个关于这么方面的信息类。首先我们来看一下相关的函数。获取时间,其中格式为%d%b_%H%M,来看一下函数定义。 def getTS(self): # Gets a timestamp in a default format (day month time) startTime = date...原创 2019-02-23 14:53:59 · 1094 阅读 · 0 评论