Antworten:
Es gibt keine strikte algorithmische Beziehung zwischen Längen- und Breitengrad und Postleitzahl - es handelt sich um benutzerdefinierte Bereiche, die vom Postdienst generiert werden. Sie benötigen Zugriff auf einen Datensatz, der Polygone / Polygonschwerpunkte nach Postleitzahl codiert.
1) Komplex
Traditionell wird diese Aufgabe (zusammen mit der Adressensuche) als "Geokodierung" bezeichnet. Die bequemste Methode für die vollständige Adresssuche ist die Suche nach einem bereits vorhandenen Online-Geocodierer, sei es über Google Maps, Bing Maps oder ESRI.
2) Einfacher
Für nur US-Postleitzahlen sind jedoch Daten aus der Volkszählung verfügbar:
http://www.census.gov/geo/www/cob/z52000.html
Ich bin nicht mit R-Geodaten vertraut, aber alles, was Sie benötigen sollten, sind Polygon-> Schwerpunkt und Schwerpunkt-> Koordinaten.
3) Am einfachsten
Diese Aufgabe ist häufig genug, damit ein bereits vorhandenes Centroid-Dataset vorhanden ist: http://coolthingoftheday.blogspot.com/2008/04/free-us-zip-code-database-as-csv.html
Sie haben an der sah zipcode
Paket ? Es handelt sich im Grunde genommen um einen Datenrahmen mit ca. 45.000 Postleitzahlen sowie Stadt, Bundesstaat, Breite und Länge.
Ich benutze die geocode
Funktion im ggmap
Paket.
Anscheinend verwenden Sie Ruby on Rails.
Versuchen Sie dieses Tutorial von Ryan Bates:
http://railscasts.com/episodes/273-geocoder?view=asciicast
. Wenn Sie Adresse oder Postleitzahl eingeben, werden Längen- und Breitengrad angezeigt.