查看原文
其他

【GIS实验课】04 GIS数据的批处理方法

不许人间见白头 数读城事 2021-09-20
高线批量提取的代码可在后台回复“等高线”收到获取方法。

01主要内容

研究区域为安徽某市,所下载DEM的是该区域GDEMV2 30M 分辨率数字高程数据,一共有五景,分别使用ArcToolBox中的Batch功能、Model builder对这五景DEM数据实现等高线提取的批量处理,并使用ArcPy编写批处理程序。


02目的

1、学会用ArcPy编写批处理程序

2、学会对数据进行批量处理

3、掌握使用Model builder建模进行数据批量处理

 

03具体步骤
◐ 1. 方法一:contour工具的批处理功能

利用Arctoolbox里面的contour工具的Batch功能进行批量等高线提取(图1)。

图1|利用Batch功能进行批量等高线提取


◐ 

2. 方法二:Model builder

 利用Model builder实现批量等高线提取(图2)

图2用Model builder实现批量等高线提取



3. 方法三:利用ArcPy进行批量剪裁

在Python的IDLE中编写批量代码,具体代码如下所示:

import arcpyfrom arcpy import envarcpy.CheckOutExtension("3d")env.workspace="C:\\Users\\Admin\\Desktop\\GIS Practice\\test1\\input_data"Rasters= arcpy.ListRasters("*","tif")for raster in Rasters:contourInterval = 200baseContour = 0outContour = "C:\\Users\\Admin\\Desktop\\GISPractice\\test1\\output_data\\"+raster.split(".")[0]+"_contour.shp"arcpy.Contour_3d(raster,outContour,200,0)print "ok!"

运行结果(图3):

图3|批量剪裁结果图
Tips:

通过使用ArcToolBox中的Batch功能、Model builder、 ArcPy这三种方法对研究区域的5景GDEMV2 30M 分辨率数字高程数据进行批量等高线的提取,在运行ArcPy脚本的时候,Contour(raster,outContour,200,0)这一句总是出错,报错的提示是Contour没有被定义,后来将代码改为arcpy.Contour_3d (raster,outContour,200,0)即可,Contour这个help工具给出的示例代码直接是Contour而不arcpy.Contour_3d(这告诉我们遇到问题一定要看help文档,自己学会解决问题!!!),主要是因为在这之前Contour这个工具未被调出,所以正在Python的IDLE里面写的代码时候需要写arcpy.Contour_3d将Contour这个工具给调出来,除此之外还有一个问题就是批量数据要分别命名,所以在写代码的时候需要将每个输出的数据按一定的规则命名:“存储位置” +raster.split(".")[0]+"_contour.shp",通过上面这些细节的修改最近ArcPy脚本运行成功得到了正确的结果。

本次操作不难,就是选取一个工具分布使用三种方法进行批量处理,三种方法各有各的特点,本人更喜欢使用ArcPy进行批量处理数据, ArcPy的处理数据的速度更加快一些。

等高线批量提取的代码可在后台回复“等高线”收到获取方法。


作者|不许人间见白头

排版|Moon

校阅|数读菌


那今天就到这里结束啦,欢迎留言讨论。文中的图片文字未经许可不要随便“引用”。

如果可以的话,希望能够转发分享,点个在看并且点个,给个赞赏~~也欢迎规范转载~

也希望大家和我多留言互动啊!(据说这样可以增加我的推送在你的订阅号里出现的概率)

文章推荐 【GIS实验课】03 城镇住房选址适宜区评价分析【ENVI实验课】02利用ENVI进行农业耕作用地变化监测【ENVI实验课】01基于像元二分模型的植被覆盖度反演【GeoDa基础】GeoDa平台下的江西省县级统计数据分析【GIS实验课】02 超市选址适宜性评价【数据整理】2019年行政区划调整的数据更新与分享【双评价学习笔记】农业:气候评价(协同克里金方法)【GIS实验课】01山区土壤侵蚀评价及其地形的关系——以皖西大别山为例【GIS基础】基本空间分析工具:缓冲区、网络分析、相交分析、密度分析【GIS基础】基于路网数据的最短路径分析(附练习数据)【瞎七八扯】如何确定“真实”人口数量、分布以及流动?【GIS高阶】数据驱动页配合arcpy实现批量出图【数据分享】如何获取北京旅游景区AOI数据?【数据分享】如何获取全国矢量地铁站点与线路数据?

需要你的“分享”和“在看”


END>

如需全文转载文章、投稿或者合作

可添加微信

(回复超慢!!!)

(不要添加我问各种问题,我大概率不会的==)

(入群请一定要备注入群)

(添加后会在晚上非工作时间通过,请稍安勿躁)


公众号


微博

▼ 点击阅读原文,使用关键词搜索历史文章
: . Video Mini Program Like ,轻点两下取消赞 Wow ,轻点两下取消在看

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存