geopandas 平面投影下计算经纬度
·
在画地图的时候通常会用到平面投影,但是平面投影的单位通常是米,因此在出图的时候会出现下面的问题:(横纵左边出问题,他不是经纬度)

因此,写个函数计算一下
def lat_lon_x_y(long_yuandian, lat_yuandian, lon_goal_list, lat_goal_list, goal_crs):
# import geopandas as gpd
# from shapely.geometry import Point
# lon_yuandian, lat_yuandian = [80.76, 14.764]
# lon_goal = [90, 110,130]
# lat_goal = [20, 40]
lon_yuandian, lat_yuandian = [long_yuandian, lat_yuandian]
lon_goal = lon_goal_list
lat_goal = lat_goal_list
goal_crs = goal_crs
point_list = []
for i in lon_goal:
point_list.append(Point(i, lat_yuandian))
s = gpd.GeoSeries(point_list, crs=4326).to_crs(goal_crs)
x_list = []
for i in s:
x_list.append(i.x)
point_list = []
for i in lat_goal:
point_list.append(Point(lon_yuandian, i))
s = gpd.GeoSeries(point_list, crs=4326).to_crs(goal_crs)
y_list = []
for i in s:
y_list.append(i.y)
# print(x_list)
# print(y_list)
return lon_goal_list, lat_goal_list, x_list, y_list
就能正常显示经纬度了

更多推荐


所有评论(0)