Google Maps の出力ファイルを QGIS へ読み込むと、何もない海上へ地図が移動することがあります。表計算ファイルに場所名とリンクはあるのに、緯度・経度が見当たらない場合もあります。すべての地点がずれることもあれば、レストラン 1 件だけがひっそり [0,0] へ移動していることもあります。
見た目は似ていますが、原因はそれぞれ異なります。まず自分のファイルがどの状態なのかを切り分けてください。
| 症状 | 考えられる原因 | 次に行うこと |
|---|---|---|
| CSV に座標列がない | Google Takeout の 保存済み から出力した CSV | 元のリストを再エクスポートするか、座標を含む別のデータを使う |
| 一部の地点が [0,0] にある | 欠損値の代用、または元データの座標不良 | 該当場所を確認して座標を直す。確認せず取り込まない |
| ほとんどの地点が別の地域に表示される | 経度と緯度が逆 | GeoJSON を「経度、緯度」の順に戻す |
| 地物はあるが geometry が null/空 | 元の場所に利用可能な座標がない | 再スキャンするか、場所を個別に確認する |
| おおむね正しい都市だが、住所が違う | あいまいな住所や古い施設情報との誤照合 | 元の Google Maps リストと完全な住所を確認する |
最初からすべてのゼロを書き換えたり、全行の列を入れ替えたりしてはいけません。元ファイルを保存し、問題の傾向を確認して、根拠のある箇所だけを直します。
ケース 1: テイクアウト CSV には座標がありません
Google Takeout には、名前の似たエクスポートが 2 つあります。保存済みではリストごとの CSV ファイルが作成され、マップ(マイプレイス)では GeoJSON 形式の Saved Places.json が作成されます。CSV はリスト名と Google Maps リンクの保存には便利ですが、通常は緯度と経度の専用列がありません。
これはエクスポート上の制限であり、ファイルの破損ではありません。空の lat と lng の列を追加しても解決しません。また、無料のジオコーダーへ住所列をそのまま渡すと、もっともらしい誤座標が生成されるおそれがあります。
オプションは次のとおりです。
- スター付きの場所は、マップ(マイプレイス)→ Saved Places.json をダウンロードし、Takeout インポートページ を使用してください。
- カスタム、デフォルト、共有、フォローリストの場合は、Google Maps で開き、Chrome 拡張機能 を付けてエクスポートします。
- CSV しかなく、ソースを再度開くことができない場合は、完全な住所から慎重にジオコーディングし、元のマップ URL を監査列として保持してください。
二つの出力の違いは、Saved Places.json と保存済み CSV の比較で説明しています。仕様どおりのファイルを壊れたものと思って直す前に確認してください。
ケース 2: 点の座標は [0,0]
GeoJSON 座標は [経度、緯度] として記述されます。したがって、値 [0,0] は、アフリカ西海岸沖のギニア湾における実際の座標です。正当な海洋データセットにはそのポイントが意図的に含まれている可能性があるため、構造バリデーターは自動的にそのポイントを無効と判断することはできません。
カフェ、自宅、店、登山口のリストなら、[0,0] が本来の位置である可能性はほぼありません。座標の欠損として扱います。
JSON で正確なシーケンスを検索し、フィーチャーのプロパティを検査します。名前、アドレス、メモ、および Google Maps URL は保持しますが、プレースホルダー ジオメトリは保持しません。次に、ライブマップのリストから位置を復元するか、リストを再エクスポートします。リストが存在しない場合は、最初の類似した検索結果を選択するのではなく、アドレスを手動で確認してください。
行をすぐに削除しないでください。ジオメトリのない場所にも、復元に役立つメモや識別子が含まれている可能性があります。場所が確認されるまで、問題のあるフィーチャを別のシートまたはファイルに隔離します。
ケース 3: 経度と緯度が逆になる
一般的に「緯度と経度」と言います。GeoJSON はその逆です。GeoJSON 仕様 は、最初に経度、2 番目に緯度で位置を定義します。
ベルリンはおよそ次のとおりです。
- 緯度:52.52。
- 経度:13.405。
- GeoJSON 位置: [13.405, 52.52]。
[52.52, 13.405] と逆に書くと、地点は数千キロ離れた場所へ移ります。表計算ファイルで「緯度、経度」の順に並べ、そのまま GeoJSON を作り直したときによく起きるミスです。
全行で座標が逆なら、ほぼすべての地点が移動する一方、地点同士のまとまりはそれらしく見える傾向があります。間違っているのが 2 行だけなら、原因は座標順ではない可能性が高いでしょう。
範囲チェックも手がかりとして使用します。緯度は -90 ~ 90 でなければなりません。経度の範囲は -180 から 180 です。「緯度」121 は間違いなく経度です。13 や 52 などの値はどちらの列でも有効であるため、範囲チェックだけでは順序を証明できません (既知の場所を比較する)。
ケース 4: ジオメトリが空か欠落しています
GeoJSON フィーチャーは、そのジオメトリが NULL、空、または不正な形式であっても、名前とプロパティを保持している可能性があります。地図ソフトでは描画できません。
GeoJSON バリデーター でファイルを検証してください。ブラウザー内で JSON 構文、FeatureCollection の構造、ジオメトリタイプ、座標配列を確認できます。また、壊れたファイルと、構文は正しいものの位置が誤っているポイントを含むファイルを切り分けるのにも役立ちます。
バリデーターの制限を覚えておいてください: 有効な構造は正しい場所を保証するものではありません。[0,0] は構造的に有効です。間違った通りの座標は構造的には有効です。検証は最初のフィルターであり、最終的な判断ではありません。
ExportMyMap が KML、GPX、GeoJSON のような地図形式を作る際、有効な座標のない項目は出力から除外されることがあります。選んだ場所の件数と、出力された地点数を比べてください。少しだけ不足している場合は、元データの一部に座標がないか、不完全な可能性があります。
ケース 5: 座標はもっともらしいが、場所が違う
この問題は地図が一見正常に見えるため、[0,0] より見つけにくいものです。「Main Street, Springfield」のような短い住所は、複数の都市に該当します。店が移転・閉店したり、施設情報が新しいものへ置き換わったりした可能性もあります。検索結果からコピーした Google Maps URL が、特定の施設ではなく地図の表示範囲を指している場合もあります。
行をチェックするときは、少なくとも 2 つの識別子を使用します。
- フルネームと都市。
- 住所と郵便番号。
- 元の Google Maps 場所リンク。
- 電話番号またはウェブサイト(利用可能な場合)。
リンクを開いて、検索テキストだけでなくピンを確認します。ビジネスクリティカルなデータの場合は、最も近い結果を一括して承認するのではなく、修正されたすべての一致を手動で検証します。
安全な修理ワークフロー
1. オリジナルを保存する
編集していない原本をコピーし、saved-places-original.json などの分かりやすい名前を付けて保管します。唯一の原本を直接編集しないでください。
2. 問題の件数を数える
地点の総数、geometry が null の件数、[0,0] の件数、おおまかな分布範囲を記録します。500 件中 497 件が正しいなら、変換方法をすべて変える必要はなく、問題の 3 行だけを直せば済みます。
3. ジオコーディングの前に再エクスポートする
Google Maps リストがまだ存在する場合は、通常、ラベルから座標を再構成するよりも、新しい GeoJSON エクスポート を使用する方が安全です。ライブ リスティングでは、単純な住所では不可能な、安定した場所の一致を提供できます。
4. 別のコピーで修復する
監査列を保存するか、各置換座標がどこから来たのかを記録してください。スプレッドシートで作業している場合は、座標精度を保持して UTF-8 をエクスポートします。
5. サンプルを検証して表示する
構造検証を実行し、境界ボックスを検査し、データセットの北、南、東、西の端から既知のポイントを開きます。次に、中央にあるいくつかの通常のポイントをテストします。有効な境界ボックスでも、大きく間違って配置されたフィーチャを 1 つ隠すことができます。
完全な GIS チェックを行うには、QGIS ワークフロー に従い、レイヤーにズーム を使用します。このスケールでは、ヨーロッパの残りのデータセットとともにアフリカ近くの唯一のポイントを簡単に見つけることができます。
不明な座標を、見せかけの精度で埋めない
小数点以下 6 桁まである座標は正確そうに見えますが、間違った入口、都市の中心点、同名の別店舗を示していることもあります。
場所を確認できない場合は、そのジオメトリを欠落したままにして、レビュー用に行を保存してください。明らかに不完全なデータセットは、誰かを間違った場所に送ってしまう完全に見えるデータセットよりも安全です。
元データを直したら、用途に合う形式をエクスポートします。表計算なら CSV、ウェイポイントなら GPX、GIS なら GeoJSON です。座標の問題は複数の出力ファイルへ広げる前に、元データ側で解決してください。