GeoJSONをweb用に軽量化する

未分類

経市区町村値マップ」の読み込み時間低減のため、国土数値情報の行政区域データをもとに、容量の小さいGeoJSONファイルを作成した。
見た目を極力損なわずに、ポリゴンデータの容量を低減する手順をメモする。

手順

  1. 元データを準備
  2. ポリゴンデータを簡素化 (mapshaper)
  3. 不要なジオメトリを削除
  4. ジオメトリのエラーを修復 (QGIS)
  5. 都道府県境界データを作成 (QGIS)

元データを準備

例として、国土数値情報ダウンロードサイトより、行政区域データを利用。
各都道府県のファイルには市区町村の区域のデータが含まれており、全国のファイルには市区町村の区域データに加えて、都道府県の区域のデータが含まれるが、ポリゴンの簡素化を行う場合、都道府県の区域データは、簡素化後の市区町村の区域データから生成するほうが望ましい (後述)。

ポリゴンデータを簡素化 (mapshaper)

ダウンロードしたgeojosnファイルをmapshaperをインポートし、ポリゴンデータの簡素化を行う。
かなり大胆に簡素化をしても違和感がないため、経市区町村値マップでは0.50%まで簡素化している。(475MB → 23.5MB)

不要なジオメトリを削除

mapshaperで簡素化すると、点が1つもないジオメトリができてしまうことがある。
各featureの内容を確認し、geometryがnullのものがあれば削除する。(23.5MB → 3.6MB)

ジオメトリのエラーを修正

未分類