私は 900 の緯度と経度の座標のセットを持っています。これらの座標によって参照される「州」を見つけるための比較的単純な方法が必要です。それが役立つ場合、データはExcelにあります。
4 に答える
Google では、ユーザーが表示できる地図でジオコーディング / リバース ジオコーディングを使用することを要求しているため、それができない場合は、空間関数を備えたデータベースを使用するのが最善の方法だと思います。まず、NationalAtlas.gov で無料で見つけられる州の境界が必要です。私は SQL Server (2008 または 2012 バージョンが必要) を使用しており、STContains() メソッドを使用して、それが属している状態を見つけることができます。
こちら で提供されている平均値を使用してみてください。運が良ければ、900 の座標ペアのほとんどが、最も近い中心を持つ州に属します。経度/緯度の位置間の距離の計算については、こちらで説明しています。
別の方法として、こちら で提供されている米国の郵便番号を含む ZIP テーブルを使用することもできます。郵便番号がわかれば州がわかりますね。よくわかりませんが、各州には郵便番号の間隔があります。場所の郵便番号が分かれば、間隔とその場所が属している州を見つけることができます。
米国の場所の座標のリストは、より正確な割り当てを取得するのに役立ちます: http://www.bcca.org/bahaivision/fast/latlong_us.html リストで最も近い場所を見つけ、結果としてその州を取ります。
より簡単な解決策は、ezcmd.comのRESTAPIサービスを使用することです。これらは2つのAPIを提供します。
http://ezcmd.com/apps/app_geo_postal_codes#geo_postal_codes_api
1)必要なのは、郵便番号と国コード(米国の場合は米国または米国のいずれかを使用)を指定するだけです。オプションで、距離半径と単位(マイルまたはキロメートル)を渡すと、返されます。指定された距離内にある州および州のその他すべての郵便番号
2)無料検索。zip/市/州/州および国のいずれかを含むあいまい検索フレーズを指定すると、その検索フレーズに最も一致するものが返されます。
ヒント:#2を使用して、あいまいな(人間が読める)住所の郵便番号を検索し、その郵便番号を#1に渡して、その郵便番号に最も近い場所を検索できます。
また、ここに特定のIPアドレスの完全な地理的位置情報とともに郵便番号を返す別のAPIがあります。
http://ezcmd.com/apps/app_ezip_locator#ezip_locator_api
楽しみ !これがお役に立てば幸いです。