GeoJSON 変換ツール

この GeoJSON 変換ツールは、.geojson や .json を開いてフィーチャーを地図に、プロパティをテーブルに表示し、シェープファイル、KML、GPX、CSV として保存します。処理は GDAL でブラウザー内で行われ、ファイルはアップロードされません。ポイント・ライン・ポリゴンが混在していれば種類ごとに別のシェープファイルになり、入れ子のプロパティは JSON テキストになります。

うまく変換できないファイルがありましたか? [email protected] までメールでお知らせください。小さなサンプルファイルを添えていただけると、修正しやすくなります。

要点

GeoJSON をどの形式にも変換できる1つのツール

GeoJSON は、ウェブ地図や API、Leaflet や Mapbox といった JavaScript ライブラリが使う形式です。1つのテキストファイルに FeatureCollection が入り、座標は WGS84 の経度・緯度で、各フィーチャーには入れ子のオブジェクトやリストを含む自由なプロパティを持たせられます。一方、デスクトップ GIS、Google Earth、GPS 端末、Excel はそれぞれ別の形式を求めるため、GeoJSON の変換が必要になる場面はとても多くあります。このページはファイルを読み込み、まず中身を見せます。地図上のフィーチャー、検索や並べ替えができるテーブルに並んだすべてのプロパティ、そしてポイント・ライン・ポリゴンの数です。そのあとで出力形式を選びます。ArcGIS や従来の GIS の作業にはシェープファイル、Google Earth や Google マイマップには KML、Garmin の端末や登山アプリには GPX、Excel でプロパティを開くなら、座標や WKT を独立した列に持つ CSV が向いています。変換には、QGIS の土台でもあるライブラリ GDAL をブラウザーで動くようにコンパイルしたものを使うので、社内 API のデータや公開前のプロジェクトもお使いのパソコンの外には出ません。それぞれの変換について詳しく知りたい場合は、下のリンク先のページをご覧ください。

GeoJSON ファイルを変換する方法

  1. .geojson または .json ファイルをページにドロップするか、クリックして選択します。
  2. 概要に表示される地図、プロパティのテーブル、ジオメトリの種類を確認します。
  3. 出力形式とオプションを選び、変換ボタンをクリックしてファイルをダウンロードします。

出力形式ごとに変わること

シェープファイルは1種類のジオメトリしか持てない

GeoJSON の FeatureCollection にはポイント・ライン・ポリゴンを混在させられますが、シェープファイルではできません。このツールは stops_points.shp や stops_lines.shp のように種類ごとに1つのシェープファイルを書き出し、それぞれに .prj と .cpg を付けて1つの .zip にまとめます。.dbf のフィールド名は 10 バイトまでなので、それより長いプロパティ名は重複しないように短縮されます。

入れ子のプロパティはテキストになる

シェープファイル、KML、CSV にはオブジェクトやリストを入れるフィールドがないため、["bus", "night"] のような値を持つ tags などのプロパティは JSON テキストとして書き込まれます。数値、true と false、日付は値のまま残ります。GPX では、対応する GPX 要素のないプロパティは拡張要素(extensions)として残りますが、ほとんどの GPS 端末はこれを無視します。

GPX には面がない

GPX では、ポイントはウェイポイントに、ラインはトラックになります。ポリゴンは輪郭に沿ったトラックになり、リングごとに1つのセグメントが作られるので、公園や区域は端末上で閉じた線として表示されます。ウェイポイントやトラックの名前にどのプロパティを使うかは選べます。

座標は指定しない限り WGS84 のまま

標準の GeoJSON は WGS84 の経度・緯度です(RFC 7946)。KML と GPX も WGS84 です。シェープファイルと CSV も WGS84 のまま書き出されますが、メートル単位で計測したい場合は、平面直角座標系第IX系の 6677 や UTM 54N の 6691 などの EPSG コードを入力してください。別の座標系を示す crs メンバーを持つ古い GeoJSON は、その座標系として読み込まれます。

geojson.io や Mapbox の色

marker-color、stroke、fill などの simplestyle プロパティは、各プレイスマークの本物の KML スタイルになるので、Google Earth でも同じ色で表示されます。シェープファイルでは marker-col、stroke-wid のような短縮されたフィールドとして残り、QGIS で各フィーチャーをその色で描くための .qml スタイルファイルが付きます。GPX と CSV では値として残るだけです。

ファイル形式について

GeoJSON

GeoJSON は地理的なフィーチャーを表すプレーンテキストの JSON 形式で、2016 年に RFC 7946 として標準化されました。 Leaflet、MapLibre、Mapbox などのウェブ地図や、多くの API が標準で使う形式です。

  • 座標は WGS84 の経度、緯度の順です。
  • ポイント、ライン、ポリゴンを1つのファイルに混在させることができます。
  • プロパティには任意の JSON 値を使え、フィールド名の長さに制限はありません。

よくある質問

GeoJSON をシェープファイルに変換するには?

GeoJSON をこのページにドロップし、出力形式をシェープファイルのままにして変換ボタンをクリックします。ジオメトリの種類ごとに .shx、.dbf、.prj、.cpg がそろったシェープファイルが .zip で届き、ArcGIS や QGIS でそのまま開けます。

GeoJSON ファイルを Google Earth で開けますか?

Google Earth は GeoJSON を開けませんが、KML なら開けます。ここで KML を選び、各プレイスマークのラベルにするプロパティを指定してください。ほかのプロパティも残り、プレイスマークをクリックすると表示されます。

.json ファイルが読み込めないのはなぜですか?

このツールが読めるのは GeoJSON、つまり FeatureCollection、Feature、または type と coordinates を持つジオメトリです。lat と lng のキーを持つレコードのリストのような、ほかの JSON は GeoJSON ではありません。先に CSV として保存し、CSV から GeoJSON への変換ツールを使ってください。

ファイルサイズに上限はありますか?

約 200 MB までのファイルを変換できます。これは、ブラウザーが変換のためにメモリに保持できるおおよその量です。地図のプレビューには最初の 20,000 件のフィーチャーが表示されますが、変換されるのはすべてのフィーチャーです。