CSV を GeoJSON に変換 – 緯度経度または WKT から
このコンバーターは、緯度・経度の列または WKT の列を持つ CSV を GeoJSON に変換し、Excel がよく書き出すセミコロン区切り、小数点カンマ、Windows の文字コードにも対応します。CSV はブラウザー内で読み込まれ、アップロードされません。住所のジオコーディングは行わず、度分秒の座標には対応していません。有効な座標のない行は、ジオメトリが null のまま残ります。
うまく変換できないファイルがありましたか? [email protected] までメールでお知らせください。小さなサンプルファイルを添えていただけると、修正しやすくなります。
要点
- 入力: CSV (.csv)。出力: GeoJSON (.geojson)。
- ファイルはアップロードされません。処理はお使いのブラウザー内、ご自身の端末で行われます。
- ファイルサイズ: 固定の上限はありません。非常に大きなファイルは端末のメモリーによって制限されます。
- 最新のブラウザー(Chrome、Edge、Firefox、Safari)が必要です。パソコン、タブレット、スマートフォンで使え、インストールは不要です。
- 無料、登録不要です。
CSV を GeoJSON に変換する理由
店舗、センサー、目撃情報、顧客などのリストは、1行に1地点、緯度と経度の列を持つ形で Excel や Google スプレッドシートで作られることがよくあります。それをウェブ地図に載せるには GeoJSON が必要です。このコンバーターは、lat、latitude、lon、lng、longitude、x、y といった一般的な名前の列なら、座標の列を自動で見つけます。また、POINT (12.57 55.68) のような WKT テキストの列も使え、その場合は線やポリゴンも扱えます。Excel が国ごとに書き出す CSV の違い、つまりカンマかセミコロンか、小数点がピリオドかカンマか、UTF-8 か古い Windows の文字コードかにも対応します。列が認識されない場合は、ご自分で選べます。ほかの列はすべてプロパティになります。ファイルはブラウザー内で読み込まれ、アップロードされることはありません。
CSV を GeoJSON に変換する方法
- .csv ファイルをボックスにドロップするか、クリックして選択します。
- 座標に使う列を確認し、経度・緯度でない場合は「CSV の座標系(EPSG コード)」に座標系を入力します。
- 「GeoJSON に変換」をクリックし、GeoJSON ファイルをダウンロードします。
知っておきたいポイント
座標の列の見つけ方
値が WKT に見える列があれば、まずそれがジオメトリとして使われます。そうでなければ、名前が lon、lng、long で始まる列、または x や easting という名前の最初の列が経度/X に、名前が lat で始まる列、または y や northing という名前の最初の列が緯度/Y になります。どの列が使われたかは概要に表示され、別の列を選ぶこともできます。コペンハーゲンの地点で緯度と経度が逆になると、アラビア海に置かれてしまうので、変換前に地図で確認する価値があります。住所は座標に変換されません。ファイルには数値または WKT が必要です。
セミコロンと小数点カンマ
ドイツ、フランス、デンマークなど多くの国では、Excel が列の区切りにセミコロン、小数点にカンマを使って CSV を保存するため、55,6813 は 55.6813 を意味します。区切り文字(カンマ、セミコロン、タブ、パイプ)はヘッダー行から判定され、Excel の「sep=」で始まる1行目にも従います。小数点カンマは、セミコロン区切りやタブ区切りのファイルで認識されます。カンマ区切りのファイルでは、カンマは区切り文字としか解釈できません。小数点カンマのファイルでは、1.200 のような桁区切り付きの数値はテキストのままです。55°40'52"N のような度分秒の座標には対応していないため、先に十進数の度に変換してください。
文字コード
BOM の有無を問わず UTF-8、そして UTF-16 を認識します。有効な UTF-8 でないファイルは、西ヨーロッパや南北アメリカの Windows 版 Excel が「CSV(カンマ区切り)」で使う Windows-1252 として読み込まれるため、æ、ø、é、ñ などの文字も正しく残ります。Shift_JIS などのアジアの文字コードやキリル文字の文字コードといった、ほかの古い文字コードは判別されません。そうしたファイルは、先に「CSV UTF-8」で保存し直してください。
数値、テキスト、空のセル
列が GeoJSON で数値になるのは、その列の値がすべて数値の場合だけです。郵便番号 0800 や ID 000123 のように先頭が 0 の値があれば列はテキストのままになり、何も失われません。座標の列はプロパティとして重複して入りません。座標が空または読み取れない行は "geometry": null のまま残り、その件数がページに表示されます。
座標系
CSV には、数値がどの座標系のものかが書かれていません。経度・緯度は、GPS や Google マップと同じ WGS84 とみなします。UTM の東距・北距(メートル単位)のように明らかに度でない値の場合は、EPSG:25832 や EPSG:27700 などの EPSG コードの入力を求められ、WGS84 に変換されます。SRID=... 付きの EWKT 値なら、コードが自動で入ります。
ファイル形式について
CSV
CSV(comma-separated values)は、Excel、Google スプレッドシート、あらゆるデータベースで開けるプレーンテキストの表です。 独自のジオメトリタイプはなく、位置は緯度と経度のような2つの座標列、または WKT テキストの列として保存されます。
- ポイントは2つの列(X と Y、または経度と緯度)で表せます。ラインとポリゴンには WKT 列が必要です。
- 座標系はファイルに保存されないため、別途控えておいてください。
- 区切り文字に標準はありません。Excel は言語設定によってカンマまたはセミコロンを使います。
- すべての値はテキストです。0800 を数値と見なすか郵便番号と見なすかは、読み込むプログラム次第です。
GeoJSON
GeoJSON は地理的なフィーチャーを表すプレーンテキストの JSON 形式で、2016 年に RFC 7946 として標準化されました。 Leaflet、MapLibre、Mapbox などのウェブ地図や、多くの API が標準で使う形式です。
- 座標は WGS84 の経度、緯度の順です。
- ポイント、ライン、ポリゴンを1つのファイルに混在させることができます。
- プロパティには任意の JSON 値を使え、フィールド名の長さに制限はありません。
よくある質問
CSV はアップロードされますか?
いいえ。ファイルの読み込みと変換はお使いのブラウザーが行うため、顧客リストなどの個人的な住所データがお使いのコンピューターの外に出ることはありません。
Excel ではどの形式で CSV を保存すればよいですか?
すべての文字が保たれる「CSV UTF-8(コンマ区切り)」がもっとも安全です。通常の「CSV」形式でもかまいません。コンバーターは Windows の文字コードや、小数点にカンマを使う国でのセミコロン区切りも読み込みます。
CSV に線やポリゴンを入れられますか?
はい、WKT の列を使えば入れられます。1行に1つのジオメトリで、たとえば LINESTRING (12.56 55.67, 12.57 55.68) や POLYGON、MULTIPOLYGON です。2つの列に分かれた座標からは、ポイントしか作れません。
Google スプレッドシートでも使えますか?
はい。Google スプレッドシートで「ファイル」→「ダウンロード」→「カンマ区切り形式」を選び、そのファイルをここにドロップしてください。