Spatial Analyst のライセンスで利用可能。
サマリ
シグネチャ ファイル内で順番にマージされたクラス間の属性距離を表示するダイアグラム (樹状図) を構築します。
使用法
入力シグネチャ ファイルは、既定のシグネチャ ファイル形式である必要があります。シグネチャ ファイルは、[ISO クラスター (Iso Cluster)] または [シグネチャの作成 (Create Signatures)] ツールを使用して作成できます。ファイルには、最低 2 つのクラスが必要です。シグネチャ ファイルは、拡張子が「*.gsg」であることでわかります。
[樹状図 (Dendrogram)] の出力は、ASCII テキスト ファイルです。ファイルには、テーブルとグラフの 2 つのコンポーネントがあります。
最初のコンポーネントは、クラスの組の距離テーブルで、マージの順番で存在します。2 番目のコンポーネントは、クラスの ASCII 文字を使用したグラフィックス表現で、マージの関係と階層を示します。グラフは、シグネチャ ファイル内でマージされたクラスの組の相対的な距離を示し、統計的に判断された類似性に基づいています。クラス自体は、解析地域から抽出したトレーニング サンプルからのセルのクラスターまたはセルを表します。
グラフと関連テーブルを解析することで、クラスのマージの効果を判断できます。
出力テキスト ファイルのデフォルトの拡張子は、「*.txt」です。また、「*.asc」も使用できます。
シグネチャ ファイル内にあるクラスの組の近接は、属性距離によって計測されます。
ライン幅に入力した値は、文字数に基づくグラフの幅を指定します。デフォルト値の 78 は、最小有効文字数でもあります。これより小さい数値が入力された場合は、デフォルト値の 78 が適用されます。デフォルト値より大きな値が指定された場合、グラフの解像度が上がり、距離の内挿の精度が高まります。
樹状図の表示を意味あるものにするには、ASCII ファイルを Courier などの非プロポーショナル フォントで表示する必要があります。
構文
Dendrogram (in_signature_file, out_dendrogram_file, {distance_calculation}, {line_width})
パラメータ | 説明 | データ タイプ |
in_signature_file | 樹状図の作成に使用するクラス シグネチャのある入力シグネチャ ファイル 「.gsg」という拡張子が必須です。 | File |
out_dendrogram_file | 出力樹状図の ASCII ファイル。 使用できる拡張子は、「.txt」または「.asc」です。 | File |
distance_calculation (オプション) | 多次元属性空間におけるクラス間の距離の定義方法を指定します。
| Boolean |
line_width (オプション) | 樹状図の幅を、ライン上の文字数で設定します。 デフォルトは 78 です。 | Long |
コードのサンプル
Dendrogram (樹状図) の例 1 (Python ウィンドウ)
次の例では、入力シグネチャ ファイルを使って Dendrogram (樹状図) のビューを作成しています。
import arcpy
from arcpy.sa import *
Dendrogram("c:/sapyexamples/data/zsamp12.gsg",
"c:/sapyexamples/output/z12dendro.txt", "VARIANCE", "")
Dendrogram (樹状図) の例 2 (スタンドアロン スクリプト)
次の例では、入力シグネチャ ファイルを使って Dendrogram (樹状図) のビューを作成しています。
# Name: Dendrogram_Ex_02.py
# Description: Constructs a tree diagram showing attribute distances between
# sequentially merged classes in a signature file.
# Requirements: Spatial Analyst Extension
# Import system modules
import arcpy
from arcpy.sa import *
# Set local variables
inSig = "c:/sapyexamples/data/zsamp12.gsg"
outDendro = "c:/sapyexamples/output/z12dend.txt"
lineLength = ""
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute Dendrogram
Dendrogram(inSig, outDendro, "VARIANCE", lineLength)
環境
ライセンス情報
- ArcGIS for Desktop Basic: 次のものが必要 Spatial Analyst
- ArcGIS for Desktop Standard: 次のものが必要 Spatial Analyst
- ArcGIS for Desktop Advanced: 次のものが必要 Spatial Analyst