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

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

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

xyzデータの読み込み&シェープファイル作成(繰返作業)

2013-02-27 10:40:05 | 日記
カンマ区切り(csv)ファイルをジオデータベースに登録して、GIS上で分析する。
取り扱うデータは時系列の状態(ファイル名が0000sec、0010sec、0020sec・・・)で複数。


○条件
ファイルは10秒毎に出力された津波計算結果で約1000個
データの中身は緯度・経度・値

○やりたい作業
csvファイルをジオデータベース上のテーブルに登録
テーブルからシェープファイルを作成(ポイント)
(可能であれば)処理後に表示データのフィルタを設定したり、表示色を設定したい
上記の繰り返し

---------------------------------


※ 処理を行う csv ファイルが単一のフォルダ、または以下のように格納されている必要があり。

例:
Data フォルダ
-20120221 フォルダ
  -0000sec.csv
-0020sec.csv
-20120222 フォルダ
  -0000sec.csv
-0020sec.csv


○事前準備
表示色を一度に設定するに当たり、ArcMap 上で1つの CSV ファイルを使用して、ポイントの作成、シンボルの設定を行い、レイヤ ファイルとして保存しておく必要があり。レイヤ ファイルの保存はシンボル設定を行ったレイヤをコンテンツで右クリックし、[レイヤ ファイルとして保存] から行う。

○操作手順
1.ArcMap を起動し、[ジオプロセシング] メニューの [ModelBuilder] を選択。

2.表示されるモデル ウィンドウの [挿入] メニューから [反復] → [テーブル] を選択。

3.モデルに追加される [テーブルの反復] エレメントをダブルクリックする。

4.[ワークスペース] に CSV ファイルが格納されているフォルダを指定します。上図の「Data」フォルダを指定し、下位フォルダ内の CSV ファイルにも処理を行う場合は [再帰] にチェックを入れる。

5.ArcToolbox を表示し、[変換ツール] → [ジオデータベースへ変換] → [テーブル → テーブル] ツールをモデルにドラッグアンドドロップする。

6.[テーブルの反復] 機能の出力エレメント(テーブル)を [テーブル → テーブル] の [入力行] として接続する。

7.[テーブル → テーブル] をダブルクリックし、[出力場所] でテーブルを出力するジオデータベースを設定する。

8.[名前] に以下にように記述する。

%名前%

※ジオデータベースには数字から始まる名称のテーブルを格納することが出来ないため、「out_」を付与。

上記のように%でエレメント名を囲う記述を行うことで(インライン変数と呼ばれます)で、エレメントに格納されている値を他の設定でも使用することができます。
「テーブルの反復」で一緒に追加される「名前」エレメントに現在ツールを実行しているファイルの名前が格納されます。1つ目の csv ファイルに対してツールの実行が終了すると、次の CSV ファイルの名前が「名前」エレメントに格納、ツールの実行、という処理が繰り返し行われます。

9.ArcToolbox の [データ管理ツール] → [レイヤとテーブル ビュー] → [XYイベント レイヤの作成] ツールをモデルにドラッグアンドドロップする。

10.[テーブル → テーブル] の出力エレメントを [XYイベント レイヤの作成] の [XYテーブル] として接続する。

11.[XYイベント レイヤの作成] をダブルクリックし、[X フィールド]、[Yフィールド]、[空間参照] を設定する。

12.[レイヤ名、またはテーブル ビュー] には [テーブル→テーブル] の出力名と同じ名前を入力する。(今回の場合は「%名前% 」)

13.ArcToolbox の [データ管理ツール] → [フィーチャ] → [フィーチャのコピー] をモデルにドラッグアンドドロップする。

14.[XYイベント レイヤの作成] の出力エレメントを [フィーチャのコピー] の [入力フィーチャ] として接続する。

15.[フィーチャのコピー] をダブルクリックし、[出力フィーチャクラス] に以下のように設定する。

例:
D:\Data\XY\out\%名前%.shp

16.ArcToolbox の [データ管理ツール] → [レイヤとテーブル ビュー] → [フィーチャレイヤの作成] ツールをモデルにドラッグアンドドロップする。

17.[フィーチャのコピー] の出力エレメントを [フィーチャレイヤの作成] の [入力フィーチャ] として接続する。

18.[フィーチャレイヤの作成] をダブルクリックし、[レイヤ名] に「%名前%」を設定する。

19.ArcToolbox の [データ管理ツール] → [レイヤとテーブル ビュー] → [レイヤのシンボル情報を適用] ツールをモデルにドラッグアンドドロップする。

20.[フィーチャレイヤの作成] の出力エレメントを [レイヤのシンボル情報を適用] の [入力レイヤ] として接続する。

21.[レイヤのシンボル情報を適用] をダブルクリックし、[シンボルレイヤ] に事前準備で用意したレイヤ ファイルを設定する。

22.[レイヤのシンボル情報を適用] を右クリックし、[モデル パラメータ]、[マップに追加] を選択し、モデルを実行する。

反復処理やインライン変数の詳細につきましては、以下の web ヘルプも合わせてご参照ください。

「ModelBuider の反復の使用例」
http://help.arcgis.com/ja/arcgisdesktop/10.0/help/index.html#/na/00400000001n000000/

「インライン モデル変数置換の例」
http://help.arcgis.com/ja/arcgisdesktop/10.0/help/index.html#/na/002w0000005w000000/

離散データからグリッドデータ作成(SpatialAnalyst利用)

2013-02-12 20:45:03 | 日記
ポイントデータにおいて値が存在していない箇所の値を予測して処理を行う内挿処理


エクステンションを使ってポイントシェープファイルを内挿補間。
ArcToolbox → [Spatial Analyst] → [内挿] → [IDW] 等を選択。
または、ArcToolbox → [3D Analyst] → [ラスタの内挿] → [IDW] 等の内挿補完ツールを選択。
※なお使用する内挿方法およびセルサイズなどはデータや解析の目的により異なるので、以下のヘルプを参考しユーザが決める。
「内挿法の比較」http://resources.arcgis.com/ja/help/main/10.1/index.html#//009z000000z4000000

上記の方法で出力されるのはラスタデータ。このラスタデータをメッシュポリゴンに変換されたい場合には、以下の方法にて変換が可能。
ArcToolbox → [変換ツール] → [ラスタから変換] → [ラスタ → ポリゴン]
※この際にお使いのラスタが整数型のラスタデータではない場合には、以下の手順にて整数型のラスタに変換。「ラスタをフィーチャに変換」をすると、以下のようなエラーメッセージが出る。

また [ラスタ → ポリゴン]ツールを起動後、パラメータを設定する際に[ポリゴンの単純化]のチェックを外すと、元のラスタデータのセルの形状を維持するので、特にメッシュとして出力したい場合には、こちらにチェックを入れる。なお隣合うセルのセル値が同じ場合には、そのセル同士は1つのポリゴンとなってしまうことがある。このため使っているデータによっては、ラスタからポリゴンに変換するのではなく、ラスタからポイントデータに変換し、あらかじめ作成しておいたインデックスポリゴンとポイントデータを空間結合する方法が現実的な方法かもしれません。この場合には以下の手順で行います。

ラスタデータをポイントに変換されたい場合には、以下の方法にて変換が可能です。
ArcToolbox → [変換ツール] → [ラスタから変換] → [ラスタ → ポイント]
※こちらのツールは小数点型のラスタでもそのまま処理が可能です。

インデックスフィーチャが存在していない場合には、以下の方法で作成。
格子状のインデックスレイヤを作成する場合は、ArcToolbox → [データドリブンページ] → [インデックスフィーチャ(格子状)の作成(Grid Index Features)]ツールを使用。

詳細な設定方法は以下のFAQをご参考ください。
タイル形状(格子状)ポリゴンの作成方法(ArcGIS 10.x)

上記の3で作成したインデックスポリゴンとラスタから作成したポイントを空間結合。コンテンツウィンドウでインデックスポリゴン名を右クリックし、[属性の結合とリレート] → [結合]をクリック。
[結合]ダイアログで以下のように設定します。
[このレイヤへの結合対象は]:[空間的位置関係に基づき...]
[結合対象レイヤ]:[ラスタから変換したポイント]
[結合オプション]:[各ポリゴンの属性テーブルに、そのポリゴン内に含まれるポイント...]にチェックを入れて、任意の集計方法を指定。(平均など)

シェープファイル描画の設定(シンボルの共通化)

2013-02-12 13:01:35 | 日記
描画したシェープファイルの表示を編集するにあたり、表示色・値を固定したい,ポイントデータのアウトラインをオフにしたいなど、表示設定に関わる項目をできるだけ簡易にやりたい。


対応その1
○レイヤファイルの作成
ArcMap でデータに対して行ったシンボルやラベル等のレイヤプロパティの設定は、レイヤファイルとして保存することができるので、この保存したレイヤファイルをArcMapに追加することにより、保存したシンボルやラベルの設定でデータを表示することが可能。
ArcMap のコンテンツウィンドウでシンボルやラベルの設定を行ったデータを右クリック → [レイヤファイルとして保存]で、レイヤファイルに保存。
ArcMapの「データの追加」で、保存したレイヤファイルを追加するとシンボルやラベルの設定でデータが表示される。

対応その2
○設定のインポート
データを追加後、コンテンツウィンドウで該当のポイントレイヤを右クリックし、[プロパティ] → [シンボル]タブの[インポート]ボタンをクリックし、テンプレートとなるレイヤファイルを指定し、レイヤファイルのシンボルを追加されたポイントレイヤに適用する。