シェープファイルの座標変換(投影変換)

このツールは、シェープファイルのすべての座標を変換して新しい .prj を書き出し、UTM から WGS84 の緯度・経度へ、または国家座標系へと座標系を変えます。変換先は EPSG コードで指定します。処理はブラウザー内で行われ、アップロードされません。属性は保持され、テキストは .cpg 付きの UTF-8 で保存されます。グリッドファイルが必要な測地系の変換では数メートルずれることがあります。

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

要点

シェープファイルを座標変換する理由

測量会社や自治体、同僚から受け取ったデータの座標系が、自分のプロジェクトと合わないことはよくあります。ウェブ地図には WGS84 が必要なのに UTM ゾーンだったり、ほかのレイヤーは ETRS89 なのに古い国家座標系だったり、オンラインで書き出した Web メルカトルだったりします。QGIS でプロジェクトの CRS を設定しても、変わるのはレイヤーの表示だけです。正しい座標系のファイルとして人に渡すには、座標そのものを変換しなければなりません。このページは、QGIS も使っているライブラリ GDAL と PROJ で、その処理をブラウザー内で行います。.prj を読み取り、すべての頂点を選んだ座標系に変換して、新しい .prj 付きのシェープファイルを書き出します。.prj がない場合は、先に元の座標系を入力します。データが正しい位置に来ているかは、地図のプレビューで確認できます。

シェープファイルをオンラインで座標変換する方法

  1. シェープファイルを .zip でドロップするか、.shp、.shx、.dbf、.prj ファイルをまとめて選択します。
  2. 変換先の座標系を EPSG コードで入力するか、一覧から選びます。
  3. 「座標系を変換」をクリックし、新しいシェープファイルを含む zip をダウンロードします。

座標変換で知っておきたいこと

座標変換と座標系の定義は別物

座標変換では、たとえば UTM ゾーン 32N の 556000, 6324000 が度単位の 9.92, 57.06 になるように、すべての座標が変わり、それに合った .prj が書き出されます。座標系を割り当てる(定義する)だけなら .prj が置き換わるだけで、数値はそのままです。それが正しいのは、.prj がなかったか間違っていた場合だけです。データが別の国やアフリカ沖の海上に表示される場合、間違っているのはたいてい変換先ではなく元の座標系です。

.prj がない場合

.prj がないシェープファイルには、数値がどの座標系のものかが書かれておらず、それを指定するまでは何も変換できません。.prj がない場合、このページは元の座標系の EPSG コードの入力を求めます。数値の大きさが手がかりになります。-180 から 180 の値はたいてい度単位、6桁や7桁の値はたいてい UTM や国家座標系のメートル単位です。

測地系の変換と精度

ETRS89 や WGS84 上の UTM ゾーン同士のように、同じ測地系の中での変換ならミリメートル単位で正確です。英国ナショナルグリッドの OSGB36、NAD27、DHDN などの古い国家座標系との間で測地系が変わる場合は、各国の測量機関が提供するグリッドファイルを使うのが最も正確です。こうしたグリッドファイルはブラウザーでは使えないため、PROJ は公表されている平均的なパラメーターを使い、1〜数メートルずれることがあります。測量レベルの精度が必要な作業には、グリッドをインストールした QGIS や ogr2ogr をお使いください。

テキスト、フィールド名、ファイル名

属性とフィールド名はすべて保持されます。テキストは .cpg ファイル付きの UTF-8 で書き出され、QGIS と ArcGIS はそれを正しく読み込みます。.cpg ファイルを無視する古いソフトでは、ø や é などの文字が正しく表示されないことがあります。.dbf には時刻を保存できないため、日時のフィールドはテキストのまま残ります。各シェープファイルは名前を保ち、1つの zip に入った複数のシェープファイルはまとめて変換されます。

線は曲がらない

変換されるのは頂点だけで、2つの頂点を結ぶ直線は直線のままです。短い距離なら見た目にはわかりませんが、2点だけで描いた経緯線や国境のように頂点の少ない長い線は、新しい座標系では本来の経路から少しずれることがあります。

ファイル形式について

Shapefile

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

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

よくある質問

必要な EPSG コードを調べるには?

epsg.io で国名や UTM ゾーンを検索してください。WGS84 の緯度・経度は EPSG:4326、Web メルカトルは EPSG:3857、ETRS89 上のヨーロッパの UTM ゾーンは EPSG:25828〜EPSG:25838 です。

WGS84 の緯度・経度に変換できますか?

はい。EPSG:4326 を入力してください。シェープファイルには、経度が X、緯度が Y として度単位で保存されます。これは QGIS、ArcGIS、ウェブ地図が想定する形です。

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

いいえ。GDAL と PROJ はお使いのブラウザー内で動き、新しいシェープファイルはお使いのコンピューター上で書き出されます。

GeoJSON や KML を座標変換できますか?

GeoJSON と KML は常に WGS84 の経度・緯度です。投影座標系にしたい場合は、GeoJSON をシェープファイルに変換するツール、または KML をシェープファイルに変換するツールでシェープファイルにし、そこで変換先の座標系を入力してください。

使い方ガイド