2010-06-07 3 views
5

Quelqu'un sait-il un service web gratuit qui me permet de traduire des codes postaux uk à easting et northings. J'ai trouvé un site web où je peux utiliser le grattage d'écran mais peut-être y a-t-il un bon service web GRATUIT. Merci!Royaume-Uni Code postal -> Easting, Northing

Christian

+2

Ce serait une bonne question pour le nouveau SIG StackExchange sur au http://gis.stackexchange.com – Cumbayah

Répondre

2

Découvrez NPE Map

+0

Merci nice one. Cela fonctionne bien. J'utilise C# et utilisé ceci: http://geekswithblogs.net/rakker/archive/2006/04/21/76044.Aspect – cs0815

+0

Semble être vraiment rapide aussi et je présume qu'ils ont les données les plus fraîches – cs0815

+0

@csetzkorn ce sont des données "crowdsourcing" créées par des bénévoles entrant des codes postaux contre 50 ans 1:50 000 cartes. Ce n'est pas nécessairement très précis. – MarkJ

7

L'enquête de munitions ont ouvert le code source de leur liste de codes postaux, y compris les coordonnées géographiques (vous pouvez avoir à faire un peu de conversion bien). Je n'ai pas encore utilisé les données, mais je pense que this correspond à la facture. Code-Point Open est un jeu de données qui contient des unités de code postal, chacune d'entre elles ayant une localisation géographique précise.

Il y a environ 1,7 million d'unités de code postal en Angleterre, en Écosse et au Pays de Galles. Chaque unité de code postal, telle que KY12 8UP ou PO14 2RS, contient en moyenne quinze adresses adjacentes.

Les codes postaux de l'Irlande du Nord ne sont pas disponibles avec Code-Point Open.

Notez qu'en raison de la nature du système de code postal britannique, les mises à jour se produisent assez fréquemment au cours d'une année. Assurez-vous de télécharger les nouvelles versions dès leur sortie.

+1

Plus d'infos et de liens sur http://www.freepostcodes.org.uk/ – AakashM

1

La base de données de codes postaux Codepoint a été publiée en 2010 en tant que données ouvertes sous la forme d'une série compressée de fichiers CSV. Si vous convertissez une masse de codes postaux, vous trouverez plus efficace de localiser les bases de données sur votre propre système car l'appel à une API en ligne provoque l'attente de votre grattoir plus longtemps que prévu pour une réponse .

Vous pouvez commander les données de code postal du site officiel ici: https://www.ordnancesurvey.co.uk/oswebsite/products/code-point-open/index.html

Ou tout simplement le télécharger à partir de cette copie: http://www.freepostcodes.org.uk/

Les données Irlande du Nord ne sont pas inclus, mais il y a une copie de les données ici: http://jamiethompson.co.uk/web/2010/05/30/code-point-open-northern-ireland-addendum/

Enregistrer le travail.

Le code python pour analyser ces deux fichiers est ici: http://scraperwiki.com/scrapers/uk_postcodes_from_codepoint/edit/ http://scraperwiki.com/scrapers/ni_postcodes_from_codepoint/edit/

Le python code script CGI pour la recherche dans ces deux jusqu'à bases de données est ici: http://scraperwikiviews.com/run/uk_postcode_lookup/?

1

Si vous traitez beaucoup de données, il vaut mieux utiliser votre propre solution locale. Voici un script Python qui peut faire la conversion: http://webscraping.com/blog/Converting-UK-Easting-Northing-coordinates/

from pyproj import Proj, transform 

v84 = Proj(proj="latlong",towgs84="0,0,0",ellps="WGS84") 
v36 = Proj(proj="latlong", k=0.9996012717, ellps="airy", 
    towgs84="446.448,-125.157,542.060,0.1502,0.2470,0.8421,-20.4894") 
vgrid = Proj(init="world:bng") 


def ENtoLL84(easting, northing): 
    """Returns (longitude, latitude) tuple 
    """ 
    vlon36, vlat36 = vgrid(easting, northing, inverse=True) 
    return transform(v36, v84, vlon36, vlat36) 

def LL84toEN(longitude, latitude): 
    """Returns (easting, northing) tuple 
    """ 
    vlon36, vlat36 = transform(v84, v36, longitude, latitude) 
    return vgrid(vlon36, vlat36) 


if __name__ == '__main__': 
    # outputs (-1.839032626389436, 57.558101915938444) 
    print ENtoLL84(409731, 852012) 
Questions connexes