ゾーンのジオメトリ (Zonal Geometry) (Spatial Analyst)

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

サマリー

データセット内の各ゾーンに対して、指定されたジオメトリ計測値 (面積、境界、深さ、楕円の特性) を算出します。

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

ゾーンのジオメトリ
OutRas = ZonalGeometry(InRas1,"VALUE","AREA")

使用法

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

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

    • 入力データセットがラスターの場合は、そのデータセットのセル サイズが使用されます。
    • 入力データセットがフィーチャで、[スナップ対象ラスター] 環境が設定されている場合は、スナップ ラスターのセル サイズが使用されます。スナップ ラスターが設定されていない場合、セル サイズは範囲の幅または高さ (どちらか短い方) を 250 で割って求められます。この範囲は環境で指定された [出力座標系] にあります。
  • セル サイズが数値によって指定されている場合、このツールは出力ラスターに対してこの値を直接使用します。

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

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

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

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

  • 各ジオメトリ タイプに対する出力ラスターのデータ タイプは、浮動小数です。

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

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

パラメーター

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

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

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

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

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

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

Field
ジオメトリ タイプ
(オプション)

計算するジオメトリ タイプ。

  • 面積各ゾーンの面積。
  • 周長各ゾーンの周長。
  • 深さゾーン内の周囲のセルからの最深 (最も厚い) ポイント。
  • 重心各ゾーンの重心。
String
出力セル サイズ
(オプション)

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

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

Analysis Cell Size

戻り値

ラベル説明データ タイプ
出力ラスター

出力ゾーン ジオメトリ ラスター。

Raster

ZonalGeometry(in_zone_data, zone_field, {geometry_type}, {cell_size})
名前説明データ タイプ
in_zone_data

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

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

Raster Layer; Feature Layer
zone_field

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

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

Field
geometry_type
(オプション)

計算するジオメトリ タイプ。

  • AREA各ゾーンの面積。
  • PERIMETER各ゾーンの周長。
  • THICKNESSゾーン内の周囲のセルからの最深 (最も厚い) ポイント。
  • CENTROID各ゾーンの重心。
String
cell_size
(オプション)

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

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

Analysis Cell Size

戻り値

名前説明データ タイプ
out_raster

出力ゾーン ジオメトリ ラスター。

Raster

コードのサンプル

ZonalGeometry (ゾーンのジオメトリ) の例 1 (Python ウィンドウ)

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

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outZonalGeometry = ZonalGeometry("zones.shp", "Classes", "AREA", 0.2)
outZonalGeometry.save("C:/sapyexamples/output/zonegeomout3")
ZonalGeometry (ゾーンのジオメトリ) の例 2 (スタンドアロン スクリプト)

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

# Name: ZonalGeometry_Ex_02.py
# Description:Calculates for each zone in a dataset the specified geometry 
#   measure (area, perimeter, thickness, or the characteristics 
#   of ellipse).
# 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"
cellSize = 0.2

# Execute ZonalStatistics
outZonalGeometry = ZonalGeometry(inZoneData, zoneField, "AREA", cellSize)  

# Save the output 
outZonalGeometry.save("C:/sapyexamples/output/zonegeomout2")

関連トピック