メッシュコードから地図(GeoTiff画像)を作成するプログラム(Mesh2Map)を作成しました。
日本の統計データは大抵メッシュコード(1次、2次、3次などなど)で管理・公開されています。
メッシュコードから直接地図を作成できると便利だなと思って(2年くらい前に)作りました。
作ったと言っても、実態はGDALツールのgdal_rasterizeのラッパーなので、大したことはありません。
単に、メッシュコードから緯度経度座標を計算して、それを元にベクター・ラスター変換(gdal_rasterizeを実行)しているだけです。
手前味噌ですが、ちょっと作ってみたデータを簡単に表示させたい場合なんかにとても重宝します。
あくまでもデータ確認用なので、CRSはWGS84に決め打ちしています。
GUIや着色機能も追加しようと思ったのですが、あんまり必要性を感じられなかったので、そのまま公開することにしました(気が向いたらGUI作ります)。
特に問題ないと思いますが、使用の際は自己責任でお願いします。
使い方
1. プログラムのダウンロード&好きな場所に解凍
2. データの準備
テキストエディタで、以下のような書式でデータを作成&保存。
エクセルで、[csv形式で保存]でも良い。
データは先ほど解凍したフォルダ(プログラムがある場所)に保存する。
Data.txt
**************************************************************
MeshCode Data1 Data2 Data3
54391210 1 2 4
54391211 2 3 5
54391212 3 8 2
54391213 4 5 1
54391214 5 1 3
. . . .
. . . .
. . . .
**************************************************************
※1行目には列名を入力する
※列名はアルファベット推奨, 日本語可, 数字のみ不可
※2行目以降はデータ
※区切り文字は空白かまたはカンマ、タブ
※1列目はメッシュコード
※メッシュコードは1次, 2次, 3次, 5km, 100mメッシュに対応
※2列目以降は属性データ
※拡張子は何でも良い(.csv, .txt, .dat)
2. 解凍したフォルダ内の[usage.bat]を右クリックして[編集]から、以下の書式で実行コマンドを入力
ちなみに、実行したくない行は文頭に"::"を入力(usage.batを参照の下さい)。
例
3. usage.batをダブルクリックするとプログラムが実行される。
上の例では、Climate.txtというデータを入力すると、WIという列名のデータを使って、WI.tifという地図画像(GeoTiffファイル)が出力される。
出力した画像はQGISで確認できる。
また、Result.csvに緯度経度座標がくっついたデータが出力される。
このファイルも、QGISのデリミテッドテキストで開くとそのまま使うことができる。
Result.csv
**************************************************************
Lon,Lat,MeshCode,Data1,Data2,Data3
139.25625,36.09583333,54391210,1,2,4
139.26875,36.09583333,54391211,2,3,5
139.28125,36.09583333,54391212,3,8,2
139.29375,36.09583333,54391213,4,5,1
139.30625,36.09583333,54391214,5,1,3
. . . .
. . . .
. . . .
**************************************************************
※CRSは緯度経度座標系のWGS84 です。
※要望があれば対応します(異なるCRSへの対応、色付けなど)
※Linux版もあります。
日本の統計データは大抵メッシュコード(1次、2次、3次などなど)で管理・公開されています。
メッシュコードから直接地図を作成できると便利だなと思って(2年くらい前に)作りました。
作ったと言っても、実態はGDALツールのgdal_rasterizeのラッパーなので、大したことはありません。
単に、メッシュコードから緯度経度座標を計算して、それを元にベクター・ラスター変換(gdal_rasterizeを実行)しているだけです。
あくまでもデータ確認用なので、CRSはWGS84に決め打ちしています。
GUIや着色機能も追加しようと思ったのですが、あんまり必要性を感じられなかったので、そのまま公開することにしました(気が向いたらGUI作ります)。
特に問題ないと思いますが、使用の際は自己責任でお願いします。
使い方
1. プログラムのダウンロード&好きな場所に解凍
ちなみにWindowsでの動きます。
2. データの準備
テキストエディタで、以下のような書式でデータを作成&保存。
エクセルで、[csv形式で保存]でも良い。
データは先ほど解凍したフォルダ(プログラムがある場所)に保存する。
Data.txt
**************************************************************
MeshCode Data1 Data2 Data3
54391210 1 2 4
54391211 2 3 5
54391212 3 8 2
54391213 4 5 1
54391214 5 1 3
. . . .
. . . .
. . . .
**************************************************************
※1行目には列名を入力する
※列名はアルファベット推奨, 日本語可, 数字のみ不可
※2行目以降はデータ
※区切り文字は空白かまたはカンマ、タブ
※1列目はメッシュコード
※メッシュコードは1次, 2次, 3次, 5km, 100mメッシュに対応
※2列目以降は属性データ
※拡張子は何でも良い(.csv, .txt, .dat)
ちなみに、実行したくない行は文頭に"::"を入力(usage.batを参照の下さい)。
- sample_sjis_win.exe <入力ファイル名> <出力csvファイル名> <地図化する列名>
例
- Mesh2Map_sjis_win.exe Climate.txt Result.csv WI
3. usage.batをダブルクリックするとプログラムが実行される。
上の例では、Climate.txtというデータを入力すると、WIという列名のデータを使って、WI.tifという地図画像(GeoTiffファイル)が出力される。
出力した画像はQGISで確認できる。
また、Result.csvに緯度経度座標がくっついたデータが出力される。
このファイルも、QGISのデリミテッドテキストで開くとそのまま使うことができる。
Result.csv
**************************************************************
Lon,Lat,MeshCode,Data1,Data2,Data3
139.25625,36.09583333,54391210,1,2,4
139.26875,36.09583333,54391211,2,3,5
139.28125,36.09583333,54391212,3,8,2
139.29375,36.09583333,54391213,4,5,1
139.30625,36.09583333,54391214,5,1,3
. . . .
. . . .
. . . .
**************************************************************
注意事項
※色づけ, 投影変換などなどGdal toolで可能な動作は実装可能※CRSは緯度経度座標系のWGS84 です。
※要望があれば対応します(異なるCRSへの対応、色付けなど)
※Linux版もあります。
0 件のコメント:
コメントを投稿