排序 (Data Management)
插图
用法
-
可在空间上对要素类进行重新排序或排列。必须将 Shape 字段用作空间排序的排序字段。有很多空间排序方法根据要素位置以不同方式来排列要素。
-
有效输入包括地理数据库要素类、SDE 要素类、shapefile、要素图层、表和表视图。CAD 和 SDC 数据集的各组成元素也是有效输入。
-
如果选择了任何输入记录,则只会对所选记录的子集进行排序并将其写入到输出。
-
如果将多个字段设置为排序字段,则首先按第一个字段对行进行排序,然后按第二个字段对经过排序的行进行排序,依此类推。
-
可使用地理数据库要素类的 Shape_Area 字段按面积对面要素进行排序。同样,也可使用 Shape_Length 字段按长度对折线要素进行排序。如果要对 Shapefile 中的面要素进行排序,请添加一个新字段,并使用计算字段计算面积作为新字段的值,然后根据新建字段运行排序。
许可:
对于字段参数,按 Shape 字段或按多个字段排序仅在Advanced级别许可下适用。按任何单个属性字段(不包括 Shape 字段)排序在所有级别许可下都适用。
语法
Sort_management (in_dataset, out_dataset, sort_field, {spatial_sort_method})
参数 | 说明 | 数据类型 |
in_dataset |
要根据排序字段中的字段值对记录进行重新排序的输入数据集。 | Table View |
out_dataset |
输出要素类或表。 | Feature Class;Table |
sort_field [[Sort Field, Direction],...] |
指定包含对输入记录重新排序所用的值的字段,以及记录的排序方向。
| Value Table |
spatial_sort_method (可选) |
指定对要素进行空间排序的方法。仅当将“Shape”作为排序字段之一时,排序方法才可用。
| String |
代码实例
排序示例 1(Python 窗口)
以下 Python 窗口脚本演示了如何根据字段值使用“排序”对要素进行排列。
import arcpy
from arcpy import env
env.workspace = "C:/data/city.gdb"
arcpy.Sort_management("crime", "crime_Sort", [["DATE_REP", "ASCENDING"]])
排序示例 2(独立 Python 脚本)
以下 Python 脚本演示了如何在独立脚本中使用“排序”。
# Name: Sort_example2.py
# Description: Sorts wells by location and well yield.
# Author: ESRI
# Import system modules
import arcpy
from arcpy import env
try:
# Set workspace environment
env.workspace = "C:/data/newfoundland.gdb"
# set local variables
in_dataset = "wells"
out_dataset = "wells_Sort"
# Order features first by location (Shape) and then by WELL_YIELD
sort_fields = [["Shape", "ASCENDING"], ["WELL_YIELD", "DESCENDING"]]
# Use Peano algorithm
sort_method = "PEANO"
# execute the function
arcpy.Sort_management(in_dataset, out_dataset, sort_fields, sort_method)
print arcpy.GetMessages()
except arcpy.ExecuteError:
# Print error messages
print arcpy.GetMessages(2)
except Exception as ex:
print ex.args[0]
环境
相关主题
许可信息
ArcGIS for Desktop Basic: 受限制
ArcGIS for Desktop Standard: 受限制
ArcGIS for Desktop Advanced: 是
5/10/2014