KML を GeoJSON に変換
この無料の KML GeoJSON 変換ツールは、Google Earth やマイマップのポイント、パス、ポリゴンを、ウェブ地図やデータベース、プログラムで使える GeoJSON に変換します。変換はブラウザー内で行われ、アップロードされません。KML のスタイルと ExtendedData は引き継がれず、ネットワークリンクはたどらず、複数フォルダーの KML はフォルダーごとの GeoJSON を zip で出力します。
うまく変換できないファイルがありましたか? [email protected] までメールでお知らせください。小さなサンプルファイルを添えていただけると、修正しやすくなります。
要点
- 入力: KML (.kml)。出力: GeoJSON (.geojson)。
- ファイルはアップロードされません。処理はお使いのブラウザー内、ご自身の端末で行われます。
- ファイルサイズ: 固定の上限はありません。非常に大きなファイルは端末のメモリーによって制限されます。
- 最新のブラウザー(Chrome、Edge、Firefox、Safari)が必要です。パソコン、タブレット、スマートフォンで使え、インストールは不要です。
- 無料、登録不要です。
KML を GeoJSON に変換する理由
KML は Google Earth や Google マイマップから書き出される形式で、GeoJSON はウェブ地図、JavaScript ライブラリ、多くの API が前提とする形式です。変換すれば、Google Earth のプレイスマーク、パス、ポリゴンを Leaflet や MapLibre の地図に表示したり、PostGIS などのデータベースに取り込んだり、GeoJSON を地図としてプレビューできる GitHub にコミットしたりできます。下のボックスに KML ファイルをドロップしてください。変換は、QGIS と同じエンジンである GDAL を使って、すべてブラウザー内で行われます。
KML を GeoJSON に変換する方法
- .kml ファイルをボックスにドロップするか、クリックして選択します。
- 地図のプレビューと、レイヤーとフィーチャーの一覧を確認します。
- 「GeoJSON に変換」をクリックし、GeoJSON ファイルをダウンロードします。
変換で変わること
スタイルは引き継がれない
色、線の太さ、アイコンは KML の一部ですが、GeoJSON の規格には含まれないため、引き継がれません。ウェブ地図でスタイルが必要な場合は、プレイスマークの名前やフォルダーなどのプロパティをもとに、地図のコード側で設定してください。
フォルダーごとに別のレイヤーになる
GeoJSON にはフォルダーがありません。KML に複数のフォルダーがある場合、フォルダーごとに別の GeoJSON ファイルに変換され、フォルダー名を付けたファイルを .zip にまとめてダウンロードします。
名前と説明はプロパティになる
プレイスマークの名前と説明は、プロパティ「Name」と「Description」として保持されます。Google Earth で HTML として書かれた説明は、HTML のテキストのまま残ります。KML の ExtendedData に保存された追加フィールドは引き継がれません。必要な場合は、先に QGIS や Google Earth で値を説明に含めてレイヤーを書き出してください。
高度は保持される
KML の座標には高度を含めることができます。高度は GeoJSON の3つ目の座標として保持されます。ほとんどのウェブ地図は高度を無視するため、問題にはなりません。
座標系の変換は不要
KML も GeoJSON も WGS84 の経度・緯度を使うため、座標は変わりません。小数点以下最大7桁(約1 cm)で書き出されるだけです。
ファイル形式について
KML
KML(Keyhole Markup Language)は Google Earth や Google マイマップで使われる XML 形式で、2008 年から OGC 標準にもなっています。 ジオメトリのほか、スタイル、アイコン、フォルダー、HTML の説明文も保持できます。
- 常に WGS84 の経度・緯度で、高度は省略できます。
- フォルダーでプレイスマークをまとめ、変換時には各フォルダーを個別のレイヤーにできます。
- スタイル(色、線の太さ、アイコン)は KML と Google Earth に固有のものです。
GeoJSON
GeoJSON は地理的なフィーチャーを表すプレーンテキストの JSON 形式で、2016 年に RFC 7946 として標準化されました。 Leaflet、MapLibre、Mapbox などのウェブ地図や、多くの API が標準で使う形式です。
- 座標は WGS84 の経度、緯度の順です。
- ポイント、ライン、ポリゴンを1つのファイルに混在させることができます。
- プロパティには任意の JSON 値を使え、フィールド名の長さに制限はありません。
よくある質問
KML ファイルはサーバーにアップロードされますか?
いいえ。ファイルはお使いのブラウザーが読み込んで変換します。どこにも送信されないため、機密データにも安心してお使いいただけます。
KMZ ファイルも変換できますか?
はい。KMZ から GeoJSON への変換ツールをお使いください。KMZ は KML を zip 圧縮したもので、変換ツールが自動で展開します。
GeoJSON ファイル1つではなく .zip が出力されたのはなぜですか?
KML に複数のフォルダーがあるためです。構造が失われないよう、フォルダーごとに別の GeoJSON ファイルになります。1つのファイルにまとめたい場合は、先に Google Earth ですべてのプレイスマークを1つのフォルダーに移動してください。
ネットワークリンクはたどられますか?
いいえ。ネットワークリンクは別のサーバー上のデータを指しており、ダウンロードはされません。リンク先のファイルを Google Earth で開き、先に KML として保存してください。