-
Notifications
You must be signed in to change notification settings - Fork 672
Home.ja
TopoJSON とは地理空間情報をエンコードするためのフォーマットである GeoJSON の拡張形式です。TopoJSON ファイル中のジオメトリは、個別に記述するのではなく arcs と呼ばれる共有ラインセグメントとしてまとめられています。Matt Bloch’s MapShaper や Arc/Info Export format, .e00 と同様の手法です。TopoJSON は冗長性を排し、関連するジオメトリを一つのファイルに効率的に保管できます。たとえばカリフォルニア州とネバダ州が共有する境界線は一度しか記述されず、両方の州に重複することはありません。一つの TopoJSON ファイルに国や州など複数のフィーチャーコレクションを重複することなく格納できます。あるいは、一つの TopoJSON ファイルで、ポリゴン(フィル=塗り用)と境界線(ストローク=輪郭線用)の両方を、同じ arc メッシュを共有する二つのフィーチャーコレクションとして効率的に表現することが可能です。
結果として TopoJSON ファイルは GeoJSON よりずっと軽量になります。上のアメリカ合衆国のシェイプファイルは GeoJSON の場合 2.2M ですが、TopoJSON では、単純化していない境界線メッシュ形式でも 436K、すなわち 80.4% サイズが削減されます。TopoJSON では描写効率も改善されます。共有点を一度しか描かなくて済むからです。さらなるファイル容量削減のために、TopoJSON は整数座標のデルタエンコーディングのために、浮動小数点ではなく固定小数点を用います。これにより、正確性を犠牲にすることなく座標値の精度の丸め処理を省略できます(例:LilJSON )。また、GeoJSON と同様、ファイルは簡単にテキストエディタで編集したり、gzip で圧縮することができます。
そして、トポロジーのエンコーディングには有益な地図やデータ視覚化への応用例が多数あります。トポロジーは隣接するフィーチャーの連結性を保ったまま容易にジオメトリの単純化が行え、州境や国境の同期一貫単純化処理のようなフィーチャコレクションにも適用できます。トポロジーは、Dorling cartograms 等の共有境界情報の必要な手法にも用いられています。
資料
- 仕様書(日本語)
- 事例集(英文)
- Command-Line Reference
- Client API Reference
- topojson on Stack Overflow (スタックオーバーフロー/開発者向けFAQサイト(英文))
参考
- [GeoJSON フォーマット仕様(日本語)] (http://s.kitazaki.name/docs/geojson-spec-ja.html)