Je suppose que c'est une question fondamentale mais je n'arrive pas à trouver ou à reconnaître la solution.
Ce site retourne
Point:
X: -11705274.6374
Y: 4826473.6922
lorsque vous recherchez avec la première valeur de clé 000090 comme exemple. Je suppose que ceci est une référence spatiale et je comprends un peu ce que c'est.
Je cherche des instructions ou des exemples sur la façon de convertir cela en latitude et en longitude à l'aide de Python.
python
coordinate-system
convert
Vincent
la source
la source
Par défaut, le site auquel vous avez accédé utilise le système de référence spatiale EPSG 3857 (WGS84 Web Mercator). J'ai trouvé cette information ici .
Vous pouvez soit spécifier un autre système de référence spatiale en entrant le fichier EPSG souhaité dans le formulaire sous,
Spatial Reference
soit convertir les coordonnées renvoyées avec Python.Par exemple, vous pouvez utiliser les liaisons GDAL Python pour convertir ce point du système de coordonnées projeté (EPSG 3857) en un système de coordonnées géographiques (EPSG 4326).
Ceci retourne pour votre point les coordonnées de
-105.150271116 39.7278572773
.la source
afalciano a la bonne réponse mais souhaite inclure une variante d'utilisation de pyproj.
Il fait besoin que vous connaissez la chaîne de proj4 et est un petit peu plus rapide.
la source
p = pyproj.Proj(init='epsg:3857')
et le résultat est identique.La sortie n'est pas un système de référence spatial / de coordonnées , c'est une paire de coordonnées. Vous devez savoir quelle est la référence spatiale pour reprojeter les coordonnées.
Cependant, ce n'est pas nécessaire dans ce cas. Il suffit de transmettre une référence spatiale de sortie appropriée au service et celui-ci renverra les coordonnées en lon / lat.
Voici la page avec les coordonnées de sortie au format Lon / Lat utilisant le système de référence géographique WGS-84 ( EPSG 4326 ).
la source
Essayé le code suggéré par Marcel Wilson et c'est plus rapide:
la source
J'ai trouvé ce post en cherchant des moyens de le faire au sein de QGIS. Comme décrit ici , la méthode utilisée ressemble à ceci:
la source
v3.x
vous en avez besoin, vous devrez utiliserxform = QgsCoordinateTransform(crsSrc, crsDest, QgsProject.instance())
S'il vous plaît noter que la
transform
fonction depyproj
accepte égalementarrays
, ce qui est très utile quand il s'agit de dataframesla source
la source