14

同様の質問に対するすべての回答を見てきましたが、それらはすべて古いか、誰も回答していません。

この例のように、郵便番号を取得し、対応する境界を Google マップでユーザーに表示するタスクが与えられました。

このコードは Javascript で記述し、Google Maps API を使用しています。ユーザーが郵便番号を入力すると、マーカーが目的地にドロップダウンし、その郵便番号エリアを表す境界線が表示されます。現在、Google マップのマップ コードには、誰かが maps.google.com に郵便番号を入力した場合に境界を確認できる何かが含まれているようです。ポリゴンを使用しましたが、これは特定の郵便番号の周りに境界線を作成するのに役立ちません。

これを取得する方法について何か提案はありますか?

前もって感謝します!

4

3 に答える 3

9

私が知っているこれに対する簡単な答えはありません。しかし、ここにそれを行う方法の高レベルの設計があります。

郵便番号の形状ファイルはすべて国勢調査サイトにあり、この ftp サーバーからダウンロードできます。ただし、これは大量のデータであるため、保存する場所が必要です。PostGIS アドオンで PostgreSQL データベースを使用することをお勧めします。それは無料でオープンソースであり、一般的に素晴らしいものです. .shp ファイル (国勢調査シェープ ファイルのタイプ) を PostGIS ジオメトリ形式に変換するためのユーティリティがあります。PostGIS では、形状を KML として取得できます。

a) 必要に応じてデータベースから形状を KML として取得し、マップ上に表示するか、b) 郵便番号ごとに事前に kml ファイルを生成し、必要に応じてファイルを取得します (これにより、かなりのスペースを取ります)。

于 2012-07-13T13:56:39.197 に答える
0

GeoJSON 形式の FeatureCollection に慣れる必要があります。OpenLayers (またはおそらく Google API も) を使用して、マップ タイルの任意のセットにそれらをレンダリングできます。

これはかなり難しいように思えるかもしれませんが、完全に親しみやすいものです。

検索すると、郵便番号のグループの GeoJSON ファイルを購入できます。

于 2016-02-24T11:33:25.190 に答える