シェープファイル(SHP)を KML に変換

この変換ツールは、シェープファイルを Google Earth や Google マイマップ用の KML ファイルに変換し、WGS84 へ座標変換したうえで、属性をプレイスマークのデータとして保持します。処理はブラウザー内で行われ、アップロードされません。色は付かず、ポイントは押しピン、ラインと輪郭は赤になります。元の投影法は KML に保存されず、.prj がない場合は EPSG コードが必要なことがあります。

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

要点

シェープファイルを KML に変換する理由

KML は、GIS を使わない人に GIS データを見せるいちばん簡単な方法です。誰でもウェブ版、デスクトップ版、スマートフォン版の Google Earth で開けますし、Google マイマップに読み込んでリンクを共有することもできます。この変換ツールは、シェープファイルをブラウザー内で KML ファイルに変換します。.prj ファイルから座標系を読み取り、KML で唯一使える座標系である WGS84 の経度・緯度に座標変換します。.dbf テーブルの属性は各プレイスマークのデータとして保持され、Google Earth が地図上に表示するプレイスマークの名前にどの列を使うかを選べます。シェープファイルは .zip でも個別のファイルでも追加でき、サーバーには何も送信されません。

シェープファイルを KML に変換する方法

  1. シェープファイルを含む .zip をドロップするか、.shp、.shx、.dbf、.prj ファイルをまとめて選択します。
  2. 「プレイスマークの名前に使う列」を選ぶか、「自動」のままにします。
  3. 「KML に変換」をクリックし、ダウンロードしたファイルを Google Earth で開きます。

変換で変わること

常に WGS84 に座標変換される

KML の座標は、定義上 WGS84 の経度・緯度です。州平面直角座標系、UTM ゾーン、各国の国家座標系のシェープファイルは、.prj ファイルを使って座標変換されます。元の投影法は KML に保存されないため、あとで必要になる場合はシェープファイルを残しておいてください。.prj がなく、座標が経度・緯度でない場合は、EPSG コードの入力を求められます。

属性の型はテキストになる

各属性は KML の拡張データとして書き出され、フィールドがテキスト、整数、小数のどれかを記録したスキーマも付きます。ただし Google Earth は、プレイスマークのバルーンですべての値をただのテキストとして表示し、日付フィールドは 2024/05/01 の形式のテキストとして書き出されます。

プレイスマークの名前を選ぶ

Google Earth は各プレイスマークに名前のラベルを付けますが、シェープファイルに Name という列があることはまれです。「自動」では、Name という列があればそれを、なければ name、title、label を含むテキストの列を、それもなければ最初のテキストの列を使います。ほかの列や「名前なし」を選ぶこともできます。それ以外の属性は、プレイスマークのバルーンにデータの表として表示されます。

標準のスタイル

シェープファイルには色がありません。ポイントは Google Earth の標準の押しピンになり、ラインとポリゴンの輪郭は赤で描かれ、ポリゴンは塗りつぶされません。Google Earth Pro で変更するには、フォルダーを右クリックして「プロパティ」(Mac では「情報を見る」)を開き、スタイルと色を設定してください。

複数のシェープファイルは1つの KML になる

.zip に複数のシェープファイルが入っている場合は、シェープファイルごとに1つのフォルダーを持つ1つの KML になります。道路、区画、スポットなどを Google Earth で個別にオン・オフできます。

ファイル形式について

Shapefile

Esri シェープファイルは、GIS で最も広く使われているベクター形式です。「シェープファイル」は実際には同じ名前のファイルの集まりで、 .shp にジオメトリ、.shx にインデックス、.dbf に属性テーブルが入り、任意の .prj に座標系、.cpg に文字コードが入ります。

  • 少なくとも .shp、.shx、.dbf が必要です。まとめて選択するか、1つの .zip にしてください。
  • フィールド名は10文字まで、テキスト値は254文字までです。
  • 1つのシェープファイルに入れられるジオメトリタイプは1種類だけです(ポイント、ライン、ポリゴンのいずれか)。
  • .prj ファイルがないと、座標系が不明になります。

KML

KML(Keyhole Markup Language)は Google Earth や Google マイマップで使われる XML 形式で、2008 年から OGC 標準にもなっています。 ジオメトリのほか、スタイル、アイコン、フォルダー、HTML の説明文も保持できます。

  • 常に WGS84 の経度・緯度で、高度は省略できます。
  • フォルダーでプレイスマークをまとめ、変換時には各フォルダーを個別のレイヤーにできます。
  • スタイル(色、線の太さ、アイコン)は KML と Google Earth に固有のものです。

よくある質問

KML を Google マイマップに読み込めますか?

はい。マイマップでレイヤーを追加し、「インポート」をクリックして KML を選んでください。マイマップはプレイスマークの名前をタイトルとして使い、ほかの属性を詳細に表示します。1つのレイヤーに入れられるフィーチャー数には制限があるため、非常に大きなシェープファイルは分割が必要な場合があります。

穴のあるポリゴンやマルチパートのフィーチャーはどうなりますか?

穴は内側の境界として、マルチパートのフィーチャーは KML の MultiGeometry として書き出されるため、Google Earth でも GIS と同じように表示されます。

Google Earth でデータが違う場所に表示されるのはなぜですか?

たいていは .prj ファイルがないか、誤っているためです。変換前に、概要に表示される座標系を確認してください。想定と違う場合は .prj ファイルを修正してください。.prj がない場合は、求められたときに正しい EPSG コードを入力してください。

Z 値は保持されますか?

はい。高さは KML に書き出されますが、高度モードは設定されないため、Google Earth はフィーチャーを地表に描画します。高さどおりに表示するには、Google Earth Pro でプレイスマークの「プロパティ」を開き、「高度」(Altitude)タブで高度モードを変更してください。

シェープファイルはアップロードされますか?

いいえ。変換はブラウザー内で行われ、ファイルはお使いのコンピューターに残ります。

使い方ガイド