zoukankan      html  css  js  c++  java
  • ArcGis Python脚本——根据字段内容拆分要素类(shp)为多个

    插个广告,制作ArcGIS的Tool工具学习下面的教程就对了:
    零基础学习Python制作ArcGIS自定义工具观看链接
    《零基础学习Python制作ArcGIS自定义工具》课程简介

    其实,这就是批量执行了ArcToolbox 分析工具-筛选 功能。

    先上代码,后做解说:

    # in_feature:待拆分要素类
    # out_folderpath:输出路径,注意最后加“/”以与字段名拼接出输出文件路径
    # split_field:拆分标准字段
    import arcpy
    in_feature="C:/Users/yang/Desktop/中国行政区矢量图/省级行政区域.shp"
    out_folderpath="C:/Users/yang/Desktop/1/"
    split_field="NAME"
    field_data_list=[]
    #code source: https://www.cnblogs.com/yzhyingcool/ QQ:975601416
    with arcpy.da.SearchCursor(in_feature,split_field) as cursor:
      
    for row in cursor:
        
    if row[0] not in field_data_list:  
          field_data_list.append(row[0])
      
    for select_data in field_data_list:
        arcpy.Select_analysis(in_feature,out_folderpath
    +select_data+'.shp',split_field+"="+"'"+select_data+"'")

    ①该脚本实现把“省级行政区域”按“NAME”字段拆分成多个图层;

    ②该脚本只需要在变量声明时修改注释中写明的3个参数。

    ③主要使用函数 arcpy.Select_analysis 实现拆分功能,其语法如下:

    Select_analysis (in_features, out_feature_class, {where_clause})

    参数

    说明

    数据类型

    in_features

    从中选择要素的输入要素类或图层。

    Feature Layer

    out_feature_class

    要创建的输出要素类。如果不使用任何表达式,则其中将包含所有输入要素。

    Feature Class

    where_clause

    (可选)

    用于选择要素子集的 SQL 表达式。有关 SQL 语法的详细信息,请参阅帮助主题 在查询表达式中使用的元素的 SQL 参考

    SQL Expression

  • 相关阅读:
    curl crt
    test with nmap
    C#查询XML解决“需要命名空间管理器”问题
    Dapper实用教程
    javascript 计算两个日期的差值
    Glib学习笔记(二)
    安装osquery笔记
    Golang多线程简单斗地主
    PHP扩展开发之Zephir
    zabbix 安装记录
  • 原文地址:https://www.cnblogs.com/yzhyingcool/p/10274368.html
Copyright © 2011-2022 走看看