地名の最後の文字を地図にマッピングしてみる
デイリーポータルZのこの記事が少し話題になっていました。
「地名の最後の一文字だけで地図をつくると地形が見えてくる」
https://dailyportalz.jp/kiji/saigo-no-hitomoji-chizu
これを見て自分でも浜松市版を作ってみました。
これを某所で載せたところ作り方を聞かれたのでざっとまとめてみました。
まずは必要なデータのダウンロードから
(1)小地域データのダウンロード
国勢調査でデータが公開される単位に小地域というものがあります。
これをQGISで使えるShapeファイルという形式でe-Statという政府統計の総合窓口に置いてあります(←雑な説明)
e-Stat(政府統計の総合窓口)
https://www.e-stat.go.jp/
「統計データを活用する」から「地図」を選択
「境界データダウンロード」を選択
「小地域」を選択
「国勢調査」を選択
2015年の「小地域(町丁・字等別)」を選択
(今の所これが最新。2020年版が出るのはまだ少し先だと思われる※2020年6月時点)
「世界測地系緯度経度・Shapefile」を選択
今回はサンプルとして浜松市南区を選択
ファイルの中身を確認
この中で使うのはShapeファイル(拡張子はshp)。(他のファイルも同一フォルダに置いておいた方が良さげ)
(2)QGISのインストール
https://www.qgis.org/ja/site/forusers/download.html
種類がいくつかありますが安定版が良さそうです。32bitか64bitかはインストール先の環境によって選択。
インストール手順は省略
(3)QGISでの操作
新規プロジェクトを作成直後(起動するとこの状態になります)
レイヤの追加→「ベクタレイヤの追加」を選択
(1)でダウンロードした小地域のShapeファイルを選択。エンコーディングはShift_JISを選択。
Shapeファイルを読み込んだ状態。色はランダムに選択されますが後で変更可能。
小地域のShapeファイルには各エリアごとにこんな属性情報が付属しています。
今回はこの中からS_NAMEを利用。
まずはS_NAMEをそのまま表示。レイヤを右クリックしてプロパティを選択。
ラベルに「単一のラベル(single)」を選択して表示する項目に「S_NAME」を選択
表示されたS_NAMEを見るといくつかそのまま使えないものが含まれているのが分かります。
1つは「●丁目」という表記。例えば「遠州浜1丁目」なら表示されてほしいのは「浜」になります。
2つ目は「●●町」の「町」。これも取る必要があります。
QGISではラベル表示を加工することができます
正規表現を使ったりするので書き方は色々あると思いますが今回はこんな感じで加工
とりあえずの状態で完成
これをkmlに出力したりするには属性情報に項目を新規追加してそこにS_NAMEを加工した文字列をセットするとか必要ありますが、とりあえず今回はここまで。
浜松市全体のマイマップ版はこちら