ゾーンのジオメトリをテーブルに出力 (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」をご参照ください。

構文

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)

ライセンス情報

  • Basic: 次のものが必要 Spatial Analyst
  • Standard: 次のものが必要 Spatial Analyst
  • Advanced: 次のものが必要 Spatial Analyst

関連トピック