概要
mapshaperへの地図(図形)データの取り込み方、軽量化についてメモします。
今回使用するデータ
国土数値情報より、静岡県の津波浸水想定データ(シェープファイル)を利用します。
記載にあるとおり、各所の利用条件には注意してください。
地図データを軽量化する
1. mapshaperを開き、シェープファイルを読み込ませる
A40-16_22.dbf
A40_16_22.prj
A40_16_22.shp
A40_16_22.shx
- 上記のファイル群をドラッグ&ドロップ。
- shpだけではダメ。dbfには図形の属性、shpには座標、shxにはこれらのインデックス情報(対応関係)が記されており、座標系を定義するprjとあわせて一括で取り込むようにします。
2. import Optionsを指定してインポートを実行
- import Optionsに下記を入力し、「Import」ボタンを押してください。
encoding=sjis
- これは日本語の記載を含むdbfを読み込むため。他のケースでうまくいかない場合はdbfのエンコード形式を確認。
- 他のオプションは一旦そのままでいいと思います。
- うまくいくと、中央に地図(図形)データのプレビューが表示されます。読み込みファイルに問題があった場合は、中央上のファイル名を押した先で確認できます。
3. 「Console」を開いてデータを変換する
% --dissolve
- これは図形をまとめる(融合する)コマンドです。用途によりますが軽量化のため、ここでは複数の階層をもっている浸水域を1層に統合しちゃいます。
- シンプルになりました。
% -proj wgs84
- これは座標系をWGS84に変換するコマンドです。一度出力したデータの緯度経度が「おかしいな?」と思ったら試してみてください。
4. 「Simplify」を開いてデータを簡略化する
- 設定そのままで「Apply」ボタンを押したあと、どれだけ簡単にするか(100%-0%)をスライダーで調整。
- 簡略化なので、浸水域のようなポリゴンデータではラインもぐちゃぐちゃになります。……それは実用面としてどうなの?実際には加工の旨も説明しておくとよいでしょう。
5. 「Export」を開いてデータをファイル出力する
- 下図はLeafletでの表示例です。