ゾーンのジオメトリをテーブルに出力 (Zonal Geometry as Table) (Spatial Analyst)

Spatial Analyst のライセンスで利用可能。

サマリー

データセット内の各ゾーンに対して、ジオメトリ計測値 (面積、境界、深さ、楕円の特性) を計算し、結果をテーブルとしてレポートします。

ゾーンのジオメトリ (Zonal Geometry) ツールの詳細

ゾーンのジオメトリをテーブルに出力 (Zonal Geometry as Table) の図
ZonalGeometryAsTable(InRas1,"VALUE",Out_Geom,1)
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

使用法

  • ゾーンは、入力データ内において、同じ値を持つすべてのエリアとして定義されます。エリアは連続していなくてもかまいません。ラスターとフィーチャのいずれも入力ゾーンとして使用できます。

  • [処理するセル サイズ] は、数値で定義するか、既存のラスター データセットから取得することができます。セル サイズがパラメーター値として明示的に指定されていない場合、[セル サイズ] 環境が指定されていれば、そこから取得されます。パラメーターのセル サイズも環境のセル サイズも指定されていない場合、デフォルトの出力セル サイズは、次のように入力データセットのタイプに基づいて決定されます。

    • 入力データセットがラスターの場合は、そのデータセットのセル サイズが使用されます。
    • 入力データセットがフィーチャで、[スナップ対象ラスター] 環境が設定されている場合は、スナップ ラスターのセル サイズが使用されます。スナップ対象ラスターが設定されていない場合、セル サイズは範囲の幅および高さのうち小さい方を 250 で割った値で計算されます。このとき、環境で指定された [出力座標系] に範囲が存在します。
  • セル サイズが数値によって指定されている場合、このツールは出力ラスターに対してこの値を直接使用します。

    セル サイズがラスター データセットを使用して指定されている場合、パラメーターはセル サイズの値ではなくラスター データセットのパスを示します。データセットの空間参照が出力空間参照と同じである場合、解析ではラスター データセットのセル サイズが直接使用されます。データセットの空間参照が出力空間参照と異なる場合は、選択された [セル サイズ投影法] に基づいて投影されます。

  • 各ゾーンの計算は、出力テーブルに記録されます。

  • [入力ラスター、またはフィーチャ ゾーン データ] (Python では in_zone_data) が重なり合うポリゴンを持つ場合、個別のポリゴンに対してゾーン解析は実行されません。フィーチャ入力はラスターに変換されるため、各位置は 1 つの値しか持てません。

    別の方法として考えられるのは、それぞれのポリゴン ゾーンについてゾーン操作を反復処理して、その結果を適用することです。

  • [入力ラスター、またはフィーチャ ゾーン データ] (Python では in_zone_data) を指定する場合、デフォルトのゾーン フィールドは 1 つ目の有効な整数フィールドまたはテキスト フィールドになります。他に有効なフィールドが存在しないとき、ObjectID フィールド (たとえば、OID または FID) がデフォルトになります。

  • 出力テーブルでは、値フィールドは、必ずゾーン出力計算を含むフィールドの前になります。値フィールドには、ゾーン データセットで定義したゾーンの値が含まれます。

  • ゾーン計算の値は、浮動小数になります。

  • 出力テーブル内の結果は、(0 〜 180 の範囲の度で表示される) ORIENTATION アイテムを除き、すべてマップ単位で表示されます。方向は、X 軸と楕円の主軸との間の角度として定義されます。方向の角度値は、東 (3 時の位置) を始点 0 とし、長軸が垂直になる 90 度まで反時計回りに計測されます。

  • 特定のゾーンが 1 つのセルのみで構成されている場合、またはゾーンが複数のセルから構成される 1 つの正方形ブロックの場合、楕円 (この場合は円) の方向が 90 度に設定されます。

  • このツールに適用されるジオプロセシング環境の詳細については、「解析環境と Spatial Analyst」をご参照ください。

パラメーター

ラベル説明データ タイプ
入力ラスター、またはフィーチャ ゾーン データ

ゾーンを定義するデータセット。

ゾーンは、整数ラスターまたはフィーチャ レイヤーによって定義できます。

Raster Layer; Feature Layer
ゾーン フィールド

各ゾーンを定義する値を格納するフィールド。

ゾーン データセットの整数フィールドでなくてはいけません。

Field
出力テーブル

各ゾーンの値のサマリーを含む出力テーブル。

テーブルの形式は、出力先とパスによって決定されます。デフォルトでは、出力はジオデータベース テーブルです。パスがジオデータベースでない場合、形式は拡張子によって決まります。拡張子が .dbf である場合、形式は dBASE 形式になります。拡張子が指定されていない場合、出力は INFO テーブルになります。INFO テーブルは ArcGIS Pro の入力としてはサポートされておらず、表示することはできません。

Table
処理するセル サイズ
(オプション)

作成される出力ラスターのセル サイズ。

このパラメーターは、数値で定義するか、既存のラスター データセットから取得できます。セル サイズがパラメーター値として明示的に指定されていない場合、指定されていれば、環境のセル サイズ値が使用されます。そうでない場合は、追加のルールを使用して別の入力から計算されます。詳細については、使用方法をご参照ください。

Analysis Cell Size

ZonalGeometryAsTable(in_zone_data, zone_field, out_table, {processing_cell_size})
名前説明データ タイプ
in_zone_data

ゾーンを定義するデータセット。

ゾーンは、整数ラスターまたはフィーチャ レイヤーによって定義できます。

Raster Layer; Feature Layer
zone_field

各ゾーンを定義する値を格納するフィールド。

ゾーン データセットの整数フィールドでなくてはいけません。

Field
out_table

各ゾーンの値のサマリーを含む出力テーブル。

テーブルの形式は、出力先とパスによって決定されます。デフォルトでは、出力はジオデータベース テーブルです。パスがジオデータベースでない場合、形式は拡張子によって決まります。拡張子が .dbf である場合、形式は dBASE 形式になります。拡張子が指定されていない場合、出力は INFO テーブルになります。INFO テーブルは ArcGIS Pro の入力としてはサポートされておらず、表示することはできません。

Table
processing_cell_size
(オプション)

作成される出力ラスターのセル サイズ。

このパラメーターは、数値で定義するか、既存のラスター データセットから取得できます。セル サイズがパラメーター値として明示的に指定されていない場合、指定されていれば、環境のセル サイズ値が使用されます。そうでない場合は、追加のルールを使用して別の入力から計算されます。詳細については、使用方法をご参照ください。

Analysis Cell Size

コードのサンプル

ZonalGeometryAsTable (ゾーンのジオメトリをテーブルに出力) の例 1 (Python ウィンドウ)

次の例では、入力ポリゴン シェープ ファイルで定義された各ゾーンのジオメトリ メジャー値を求めています。

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 (スタンドアロン スクリプト)

次の例では、入力ポリゴン シェープ ファイルで定義された各ゾーンのジオメトリ メジャー値を求めています。

# 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, outTable, processingCellSize)

関連トピック