我有一个以英国网格参考格式(X,Y)给出的位置坐标列表,我想将它们转换为纬度和经度。

我正在使用OSGridConverter(python库),但未正确转换。例如,一个位置的一个输入是X = 517393.6563和Y = 194035.5469。

from OSGridConverter import grid2latlong
l=grid2latlong('TG 517393.6563 194035.5469')


上面,给我一个错误:OSGridConverter错误:无效的网格引用

因此,这是错误的,我尝试:

>>>l=grid2latlong('TG 517393 194035')
>>>(l.latitude,l.longitude)
(52.71367793063314, 1.7297510074170983)


以英国以外的地点结尾,这是不正确的。很有可能是由于数据格式,但是我不确定如何解决它。

最佳答案

您可能应该使用像pyproj这样的东西:

import pyproj

crs_british = pyproj.Proj(init='EPSG:27700')
crs_wgs84 = pyproj.Proj(init='EPSG:4326')

long, lat = pyproj.transform(crs_british, crs_wgs84, 517393.6563, 194035.5469)
print(lat, long)


您的情况将为:51.63289090467179,-0.3052119183057834

关于python - 将英国网格坐标(X,Y)转换为纬度和经度,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57901730/

10-11 00:12