goo blog サービス終了のお知らせ 

ArcGISのデータ作成サポートページ

ArcGISデータ作成に関する情報共有のページです

ラスタファイルに属性を追加させる方法

2013-08-26 00:25:52 | 日記

[ラスタの属性テーブルの構築] ツールを使うことでシングルバンドの整数ラスタデータセットであれば属性テーブルを持たせることが可能。もし、ラスタデータのピクセルタイプが32ビット浮動小数点の場合は、ピクセルタイプを整数にすることで属性テーブルの作成が行えるようになる。

(ESRI詳細地図のDEMは標高の区切りが整数となっている)


ピクセルタイプを整数にする方法
(方法1)
 [Arctoolbox] → [Spatial Analystツール] → [算術演算] → [Int] にてピクセルタイプを整数にする。

(方法2)
 [Arctoolbox] → [3D Analystツール] → [ラスタの算術演算] → [Int] にてピクセルタイプを整数にする

ラスタに属性テーブルを構築
1. [ArcToolbox] → [データ管理ツール] → [ラスタ] → [ラスタプロパティ] → [ラスタの属性テーブルの構築] をダブルクリックする。
2. ダイアログが開いたら、[入力ラスタ] に属性テーブルを持たせたいラスタデータを設定。
3. 設定ができたら [OK] をクリック。


属性テーブルには「OBJECT」「VALUE」「COUNT」の3つのフィールドが作成される。
「OBJECT」には、ベクタデータと同じでIDが表示。
「VALUE」には、コード値や標高値などが表示。
「COUNT」には、各VALUEの値が対応しているセルの数が表示。

この3つのフィールドは自動的に作成されるので、ユーザが属性を作成するといった作業は必要ない。
また、ラスタデータの属性テーブルは上記のデータを管理し、これら3つのフィールドの値を編集することはできないが、フィールドを追加してラスタデータの値に補足的な情報を値として入力することは可能。

なお、属性テーブルを作成した場合でも、ラスタ データはセル 1 つ 1 つの値を直接編集することはできない。Spatial Analyst の機能を使用することで、同じ値を持つセルごとであれば、値の変更や演算を行うことは可能。

既存のラスタファイルの編集(表示範囲の変更)

2013-08-20 17:54:16 | 日記
標高値が格納しているラスタから、データの範囲を抽出したい。
シェープファイルなら、[解析 ツール] → [抽出] → [選択]と同様の処理



ラスタ データは、格子状に並んだセル(セル値という数値を持つ)で全体は四角形という構造であるため、次のような処理を行う

● 標高値が格納されているラスタをもとに、削除したいデータの範囲を指定して、その部分のセル値を「値なし」という意味の値に変更したラスタを作成する。

2通りのやり方があり、どちらも Spatial Analyst エクステンションが必要

◆「値なし」という意味で「NULL」値を使用する手順

ArcToolbox → [Spatial Analyst] ツール → [条件] → [Set NULL]
ツールの [条件式] パラメーターには、例として次のようなものを入力します。
"Value" >= 0 And "Value" < 50
※ 条件式を確認して「条件式にエラーがあります。」となることもありますが、実行すると実施可能となる場合有


◆「値なし」という意味で、自分で決めた数値またはNULLを使用する手順
上にご紹介した Set Null ツールより、こちらのほうがより自由度が高いツール。
ArcToolbox → [Spatial Analyst ツール] → [マップ代数演算] → [ラスタ演算(Raster Calculator)]
演算式には、例として次のようなものを入力する。
Con("<ラスタ データセット名>" < 50 , -999, "<ラスタ データセット名>")