QGIS – 政令市区の融合

概要

国土数値情報の行政界データは、政令市の区が他の市町村と同じレベルで「行政区域」として扱われている。たとえば神奈川県を例にとると、横浜・川崎・相模原の3政令市については各区のポリゴンが他の市町村と同じように表示される。

qgis-kanagawa-before-disolve

属性テーブルのフィールドでも、最も細かい名称フィールド”N03_004″で政令市は区単位で、政令市名は郡名と同じフィールド”N03_003″に記録されている。

qgis-designated-city-dissolve-attribute-table-before

 

政令市区の融合

政令市も一般市と並びで扱うケースのために、政令市と他の市町村が同じフィールドになるように再構成する。

神奈川県を例にとると、行政界データは以下のように政令市~一般市~郡部町村という構成になっている(注目しているカラムのみ示している)。

N03_001 N03_003 N03_004 N03_007
神奈川県 横浜市 鶴見区 14101
神奈川県 横浜市 都筑区 14118
神奈川県 川崎市 川崎区 14131
神奈川県 川崎市 麻生区 14137
神奈川県 相模原市 緑区 14151
神奈川県 相模原市 南区 14153
神奈川県 横須賀市 14201
神奈川県 綾瀬市 14218
神奈川県 三浦郡 葉山町 14301
神奈川県 愛甲郡 清川村 14402

このうち同じ政令市の区を地物までまとめて一つの政令市として扱うようにする。

N03_001 N03_007 N03_901
神奈川県 14100 横浜市
神奈川県 14130 川崎市
神奈川県 14150 相模原市
神奈川県 14201 横須賀市
神奈川県 14218 綾瀬市
神奈川県 14301 葉山町
神奈川県 14402 清川村

大まかな手順は以下の通り

  • 政令市を含んだ市町村名を、新たにフィールドを作ってそこに設定
  • 政令市のコードは、従来のコード欄の値を手打ちで修正

市町村欄の生成

  • 神奈川県のレイヤの属性テーブルを表示
  • フィールド計算機を立ち上げる
  • 「新しいフィールドを作る」にチェックし、出力フィールド名、フィールドタイプ、フィールド長を設定
  • 条件式を入力
  • OKボタンを押してダイアログを閉じる
  • レイヤの編集モードを解除

qgis-designated-city-dissolve-field-calculator

条件式は以下の通り。

フィールドN03_003は以下のいずれか

  • N03_004が政令市区の場合は政令市名
  • N03_004が一般市の場合は市名
  • N03_004が町村の場合は郡名

そこで、N03_003が’市’で終わる場合(政令市の場合)はN03_003を、その他(一般市町村)の場合はN03_004を新たなフィールドN03_901にセットする。

実行結果は以下の通り。

qgis-designated-city-dissolve-attribute-table-after

次に、「ベクタ」→「空間演算」→「Dissolve」でN03_901フィールドの値で融合処理。融合後の地物は以下の通りで、政令市が一体化されている。

qgis-kanagawa-after-disolve

属性テーブルを開いてみると3政令市がそれぞれ一つにまとめられているが、各フィールドは各政令市のいずれか一つの区のデータのみが残っている。これらについては、手打ちで修正した。

qgis-designated-city-dissolve-attribute-table-code

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です