总所周知,GIS是处理栅格数据和矢量数据的极其有效的工具,但是当我们有大量数据时,用GIS自带的TOOL一个一个选择添加然后处理就会非常繁琐,这时候Arc GIS中集成的工具arcpy的优势就显现出来了,可以使用Geoprocessing工具条中的Python直接输入语句运行
当然更常用的方式是在Arctoolbox中添加Toolbox,然后导入.py脚本,直接做成类似工具条的模式以后可以自有调用,具体方式很多文章都有讲到,就不一一说明了。
另外arc gis desktop的网站上详细讲解了arcpy的相关语句和命令,可在上面查找相关命令,另外也可直接在Arctoolbox上直接右击命令条,选择item description可以看到命令的源Python代码。下面就我的工作谈谈具体批量处理数据,理论上只要是重复的工作都是可以用代码实现的。
批量处理首先涉及到读取文件列表和循环的问题,arcpy中可以直接用ListRasters或者ListFeatrues工具把文件夹中所有的矢量和栅格文件罗列出来,但是只能罗列一层文件夹中的数据,如果要罗列多层文件夹中的数据可以用语句:
for root, dirs, folders in os.walk(path):
for folder in folders:
if (folder.endswith('.shp')):
首先我要把二值化