ゾーンのジオメトリをテーブルに出力(Zonal Geometry as Table) (Spatial Analyst)
サマリ
データセット内の各ゾーンに対して、ジオメトリ メジャー値(面積、境界、厚さ、楕円の特性)を計算し、結果をテーブルとしてレポートします。
図
使用法
-
ゾーンは、入力データ内において、同じ値を持つすべてのエリアとして定義されます。エリアは連続していなくてもかまいません。ラスタ データセットとフィーチャ データセットのどちらも入力ゾーンとして使用できます。
-
入力ゾーン データがフィーチャ データセットの場合、[処理するセル サイズ] または [セル サイズ] 環境で、セルサイズを設定する必要があります。
-
各ゾーンの計算は、出力テーブルに記録されます。
入力ゾーン データを指定する場合、デフォルトのゾーン フィールドは 1 つめの有効なフィールドになります。有効なフィールドが他にない場合は、ObjectID フィールド(たとえば、OID や FID)がデフォルトになります。
[ゾーン フィールド] に予約済みフィールド(たとえば、OBECTID、FID、または OID など)を選択すると、結果があいまいになることがあります。結果には、指定された [ゾーン フィールド] だけでなく、特定の出力形式のタイプに必要な特定の予約済みフィールド名が含まれます。指定されたフィールドに、特定の出力形式の予約済みフィールドと同じ名前がある場合、出力では、結果内のすべてのフィールド名が一意になるように、ゾーン フィールドの名前を変更します。
注意:予約済みの名前ではない一意の値を持つフィールドにするには、[フィールドの追加(Add Field)] および [フィールド演算(Calculate Field)] ジオプロセシング ツールを使用します。
-
出力テーブルでは、値フィールドは、必ずゾーン出力計算を含むフィールドの前になります。値フィールドには、ゾーン データセットで定義したゾーンの値が含まれます。
-
ゾーン計算の値は、浮動小数になります。
-
ORIENTATION アイテムを除き、出力テーブルのすべての結果はマップ単位で表されます。ORIENTATION アイテムの値の範囲は 0 ~ 180(単位は度)。楕円の X 軸と長軸がなす角度が、その楕円の方向となります。方向の角度値は、東(3 時の位置)を始点 0 とし、長軸が垂直になる 90 度まで反時計回りに計測されます。
特定のゾーンが 1 つのセルのみで構成されている場合、またはゾーンが複数のセルから構成される 1 つの正方形ブロックの場合、楕円(この場合は円)の方向が 90 度に設定されます。
構文
パラメータ | 説明 | データ タイプ |
in_zone_data |
ゾーンを定義するデータセット。 ゾーンは、整数ラスタまたはフィーチャ レイヤによって定義できます。 | Raster Layer | Feature Layer |
zone_field | 各ゾーンを定義する値を保持するフィールド。 ゾーン データセットの整数フィールドでなくてはいけません。 | Field |
out_table |
各ゾーンの値のサマリを含む出力テーブル。 | Table |
processing_cell_size (オプション) | ゾーン演算で処理するセル サイズ。 環境設定で特定の値が指定されている場合、その値を使用します。設定されていない場合、セル サイズのデフォルト値は以下のようにゾーン データのタイプによって決められます。
| Analysis Cell Size |
コードのサンプル
次の例では、入力ポリゴン シェープ ファイルで定義された各ゾーンのジオメトリ メジャー値を求めています。
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outZonalGeometryAsTable = ZonalGeometryAsTable("zones.shp", "Classes", "zonalgeomout", 0.2)
次の例では、入力ポリゴン シェープ ファイルで定義された各ゾーンのジオメトリ メジャー値を求めています。
# 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)