将X-Y坐标转换为经度和纬度-Python

时间:2019-10-20 20:44:03

标签: python-3.x pandas dataframe latitude-longitude

我有一个数据框,其中的列包含x坐标和y坐标。我想将它们转换为各自的纬度和经度值。我一直在阅读,但找不到一组适用的公式。

我正在使用python。我正在使用圣安东尼奥市的311个呼叫开放数据集。
有人可以指导我如何将x,y坐标转换为纬度和经度吗?
任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

def xy_to_lonlat(x, y):
    proj_latlon = pyproj.Proj(proj='latlong',datum='WGS84')
    proj_xy = pyproj.Proj(proj="utm", zone=33, datum='WGS84')
    lonlat = pyproj.transform(proj_xy, proj_latlon, x, y)
    return lonlat[0], lonlat[1]

此功能应该可以完成工作。 如果要进行逆向转换,请使用以下方法:

def lonlat_to_xy(lon, lat):
proj_latlon = pyproj.Proj(proj='latlong',datum='WGS84')
proj_xy = pyproj.Proj(proj="utm", zone=33, datum='WGS84')
xy = pyproj.transform(proj_latlon, proj_xy, lon, lat)
return xy[0], xy[1]