『公告』 预祝您龙年大吉,万事如意, 过节期间, 大家如需数据服务,请拨打400 或直接添加客服微信,再祝大家龙年,心想事成。
关注我们 新浪 腾讯

ArcGIS教程:以表格显示分区几何统计

ArcGIS教程:以表格显示分区几何统计
为数据集中的各个区域计算几何测量值(面积、周长、厚度和椭圆的特征值)并以表的形式来显示结果。

摘要

    为数据集中的各个区域计算几何测量值(面积、周长、厚度和椭圆的特征值)并以表的形式来显示结果。

插图


VALUE AREA  PERIMETER THICKNESS XCENTROID YCENTROID MAJORAXIS MINORAXIS ORIENTATION

0     5.0   14.0      0.5       2.300     2.100     2.338     0.681      60.714

1     5.0   14.0      0.5       1.900     2.100     2.668     0.596     126.061

2     3.0    8.0      0.5       3.167     2.167     1.286     0.743     135.000

4     2.0    6.0      0.5       0.500     1.000     1.128     0.564      90.000

用法

·      区域定义为输入中具有相同值的所有区。各区无需相连。栅格和要素数据集都可用于区域输入。

·      如果输入区域数据为要素数据集,则必须通过处理像元大小或在像元大小环境中设置像元大小。

·      各个区域的计算结果将记录在输出表中。

·      在指定输入区域数据时,默认区域字段将为第一个可用的有效字段。如果无其他有效字段存在,则 ObjectID 字段(如 OID FID)将为默认字段。

·      如果为区域字段选择保留字段(例如,OBECTIDFID OID),则这可能导致结果中存在一些不明确现象。结果包括特定输出格式类型以及指定区域字段所必需的特定保留字段名称。如果对于特定输出格式,指定字段具有与保留字段相同的名称,则在输出中以结果中所有字段名均唯一的方式更改区域字段的名称。

·      在输出表中,值字段始终位于包含分区输出计算结果的字段之前。值字段包含了区域数据集定义的区域的值。

·      分区计算结果的值将为浮点型。

·      ORIENTATION 项以外,输出表中的所有结果均使用地图单位进行表示。ORIENTATION 项值的单位为度,取值范围为 0 180ORIENTATION 定义为 x 轴与椭圆长轴之间的角度。方向的角度值以逆时针方向增加,起始 0 度值位置为东方(右侧水平位置),在长轴垂直时达到 90 度。

·      如果某个特定区域仅由一个像元组成,或者该区域为单个像元方块,那么会将椭圆(在此情况下为圆)的方向设置为 90 度。

语法

    ZonalGeometryAsTable (in_zone_data, zone_field, out_table, {processing_cell_size})

参数

说明

数据类型

in_zone_data

定义区域的数据集。

可通过整型栅格或要素图层来定义区域。

Raster Layer | Feature Layer

zone_field

保存定义每个区域的值的字段。

该字段必须是区域数据集的整型字段。

Field

out_table

将包含每个区域中值的汇总的输出表。

Table

processing_cell_size

(可选)

用于分区操作的处理像元大小。

如果专门进行设置,则是环境中的值。如果未设置环境,则默认的像元大小将由区域数据类型确定,如下所示:

·         如果区域数据集为栅格,则像元大小将与区域栅格相同。

·         如果区域数据集为要素,则像元大小为输出空间参考中区域要素数据集范围的宽度或高度较小值除以 250

Analysis Cell Size

代码实例

    ZonalGeometryAsTable 示例 1Python 窗口)

    本示例为输入面 shapefile 定义的各个区域确定几何测量值。

import arcpy

from arcpy import env

from arcpy.sa import *

env.workspace = "C:/sapyexamples/data"

outZonalGeometryAsTable = ZonalGeometryAsTable("zones.shp", "Classes", "zonalgeomout", 0.2)

    ZonalGeometryAsTable 示例 2(独立脚本)

    本示例为输入面 shapefile 定义的各个区域确定几何测量值。

# Name: ZonalGeometryAsTable_Ex_02.py

# Description:Calculates for each zone in a dataset the specified geometry

#   measure (area, perimeter,  thickness, or the characteristics

#   of ellipse) and reports the results as a table.

# Requirements: Spatial Analyst Extension

# Import system modules

import arcpy

from arcpy import env

from arcpy.sa import *

# Set environment settings

env.workspace = "C:/sapyexamples/data"

# Set local variables

inZoneData = "zones.shp"

zoneField = "Classes"

outTable = "zonalgeomout02.dbf"

processingCellSize = 0.2

# Check out the ArcGIS Spatial Analyst extension license

arcpy.CheckOutExtension("Spatial")

# Execute ZonalGeometryAsTable

outZonalGeometryAsTable = ZonalGeometryAsTable(inZoneData, zoneField, "AREA", cellSize)

      京ICP备2025132830号-1 京公网安备 号