ラベル | 説明 | データ タイプ |
入力ラスター、またはフィーチャ ゾーン データ | ゾーンを定義するデータセット。 ゾーンは、整数ラスターまたはフィーチャ レイヤーによって定義できます。 | Raster Layer; Feature Layer |
ゾーン フィールド | 各ゾーンを定義する値を格納するフィールド。 ゾーン データセットの整数フィールドまたは文字列フィールドを使用できます。 | Field |
入力値ラスター | ヒストグラムの作成に使用する値を含むラスター。 | Raster Layer |
出力テーブル | 出力テーブル ファイル。 テーブルの形式は、出力先とパスによって決定されます。 デフォルトでは、出力は、ジオデータベース ワークスペースではジオデータベース テーブル、ファイル ワークスペースでは dBASE テーブルになります。 オプションのグラフ出力は、テーブル内の情報から作成されます。 | Table |
出力グラフ名 (オプション) | 表示用の出力グラフの名前。 グラフは [コンテンツ] ウィンドウの [スタンドアロン テーブル] の下にリストされます。 | Graph |
出力テーブルでゾーンを行として表示 (オプション) | 入力値ラスターの値を出力テーブルでどのように表示するかを指定します。
| Boolean |
サマリー
個別のゾーンにおける値入力のセル値の頻度分布を示すテーブルとヒストグラム グラフを作成します。
使用法
ゾーン ヒストグラムを使用すると、あるデータセットの値について、別のデータセットのクラス内における値の頻度分布を調査できます。 例としては、土地利用クラス内の傾斜分布、標高クラスの降雨分布、警察の巡回区域の犯罪分布などが挙げられます。
ゾーン ヒストグラムのクラス数は、[入力値ラスター] (Python では in_value_raster) の指定方法によって異なります。
ラスター データセットとして指定した場合に適用される条件は、次のとおりです。
- 個別値が 25 未満の整数ラスターの場合、クラス数は値ラスターの個別値の数に一致します。
- 個別値が 25 を超える整数ラスターの場合、値が 256 のクラス (1 ~ 256) に分割されます。 個別値の数が 256 未満の場合、一部のクラスの頻度が 0 になります。
- 浮動小数点ラスターの場合、値が 256 のクラス (1 ~ 256) に分割されます。
ラスター レイヤーとして指定した場合に適用される条件は、次のとおりです。
- [ストレッチ] シンボルの場合、ストレッチ タイプが使用されて、値が 256 のクラス (1 ~ 256) に分割されます。
- [分類] または [個別値] シンボルの場合、クラス数はクラスまたはシンボルの個別値に一致します。
- ゾーン解析は、[ストレッチ]、[分類]、または [個別値] シンボルで指定された値の範囲で実行されます。 計算では、シンボルに表示されない値ラスター内の値がすべて無視されます。
- [不連続] または [ベクトル場] シンボルの場合、ゾーン解析でシンボルが無視されます。 解析は、入力値ラスターをラスター データセットとして指定するときと同様に、値ラスターのデータ タイプと個別値の数のみを考慮して実行されます。
- ゾーン ヒストグラムは、値ラスター レイヤーのシンボルのラベルのクラス値を表示します。
ゾーンは、入力データ内において、同じ値を持つすべてのエリアとして定義されます。 エリアは連続していなくてもかまいません。 ラスターとフィーチャのいずれも入力ゾーンとして使用できます。
[入力ラスター、またはフィーチャ ゾーン データ] (Python では in_zone_data) の値がラスターの場合、整数ラスターである必要があります。
[入力ラスター、またはフィーチャ ゾーン データ] がフィーチャである場合、そのフィーチャは、[入力値ラスター] (Python では in_value_raster) パラメーターのセル サイズとセル配置を使用して、内部でラスターに変換されます。
[入力ラスター、またはフィーチャ ゾーン データ] と [入力値ラスター] のセル サイズが異なる場合、出力セル サイズは [入力データの最大セル サイズ] となり、[入力値ラスター] は内部でスナップ対象ラスターとして使用されます。 セル サイズは同じだが、セル同士が位置揃えされていない場合、[入力値ラスター] が内部でスナップ対象ラスターとして使用されます。 これらのいずれの場合も、ゾーン演算が実行される前に内部リサンプリングが開始されます。
ゾーンと値の両方の入力が同じセル サイズのラスターで、セル同士が位置揃えされている場合、それらの入力はツールで直接使用され、ツールの処理時に内部でリサンプリングされません。
[入力ラスター、またはフィーチャ ゾーン データ] の値がポイント フィーチャである場合、値入力ラスターの特定のセルが複数のポイントを含むことが可能です。 そのようなセルの場合、ゾーンの値は最小の ObjectID フィールドを持つポイントによって決まります (たとえば OID や FID)。
[入力ラスター、またはフィーチャ ゾーン データ] の値に重なり合うポリゴンがある場合、個別のポリゴンに対してゾーン解析は実行されません。 フィーチャ入力はラスターに変換されるため、各位置は 1 つの値しか持てません。
別の方法として考えられるのは、それぞれのポリゴン ゾーンについてゾーン操作を反復処理して、その結果を適用することです。
[ゾーン フィールド] パラメーター (Python では zone_field) の値は、整数またはテキスト タイプである必要があります。
[入力ラスター、またはフィーチャ ゾーン データ] の値を指定する場合、デフォルトのゾーン フィールドは 1 つ目の有効な整数フィールドまたはテキスト フィールドになります。 他に有効なフィールドが存在しないとき、ObjectID フィールド (たとえば OID または FID) がデフォルトになります。
ゾーン ヒストグラム グラフは、デフォルトでは作成されません。 グラフを作成するには、[出力テーブルでゾーンを行として表示] パラメーターをオンに (Python では zones_as_rows パラメーターを ZONES_AS_ROWS に設定) して [出力グラフ名] (Python では out_graph パラメーター) を指定します。 ゾーン ヒストグラム グラフは、ArcGIS AllSource アプリケーション内でのみ作成できます。スタンドアロン スクリプトではサポートされていません。
[出力テーブルでゾーンを行として表示] パラメーターをオフにして出力テーブルを作成する場合、入力値ラスターの指定方法に応じて、ラベル フィールドには値ラスター データセットまたはレイヤーのシンボルのラベルの値が含まれます。
[出力テーブルでゾーンを行として表示] パラメーターをオンにして出力テーブルを作成する場合、ラベル フィールドにはゾーン ラスターの値が含まれます。
このツールに適用されるジオプロセシング環境の詳細については、「解析環境と Spatial Analyst」をご参照ください。
パラメーター
ZonalHistogram(in_zone_data, zone_field, in_value_raster, out_table, {out_graph}, {zones_as_rows})
名前 | 説明 | データ タイプ |
in_zone_data | ゾーンを定義するデータセット。 ゾーンは、整数ラスターまたはフィーチャ レイヤーによって定義できます。 | Raster Layer; Feature Layer |
zone_field | 各ゾーンを定義する値を格納するフィールド。 ゾーン データセットの整数フィールドまたは文字列フィールドを使用できます。 | Field |
in_value_raster | ヒストグラムの作成に使用する値を含むラスター。 | Raster Layer |
out_table | 出力テーブル ファイル。 テーブルの形式は、出力先とパスによって決定されます。 デフォルトでは、出力は、ジオデータベース ワークスペースではジオデータベース テーブル、ファイル ワークスペースでは dBASE テーブルになります。 オプションのグラフ出力は、テーブル内の情報から作成されます。 | Table |
out_graph (オプション) | 表示用の出力グラフの名前。 | Graph |
zones_as_rows (オプション) | 入力値ラスターの値を出力テーブルでどのように表示するかを指定します。
| Boolean |
コードのサンプル
次の例では、ゾーン ヒストグラムの .dbf テーブルとグラフ ファイルを作成しています。
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outZonalHist = ZonalHistogram("zoneras", "zonfield", "valueras", "znhist_tbl.dbf",
"znhist_graphl", "ZONES_AS_ROWS")
次の例では、ゾーン ヒストグラムの .dbf テーブルを作成しています。
# Name: ZonalHistogram_Ex_02.py
# Description: Creates a zonal histogram output table
# showing the amount of value cells
# for each unique input zone.
# Requirements: Spatial Analyst Extension
# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Set environment settings
env.workspace = "C:/sapyexamples/data"
# Set local variables
inZoneData = "zonras"
zoneField = "zonfield"
inValueRaster = "valueras"
outTable = "C:/sapyexamples/output/zonehist_tb2.dbf"
# Execute ZonalHistogram
ZonalHistogram(inZoneData, zoneField, inValueRaster, outTable)