用墨卡托投影将excel中两列经纬度坐标转为平面坐标并写入新的两列的代码
时间: 2024-05-11 17:16:40 浏览: 119
您好,关于您的问题,可以使用Python中的geopandas库来实现墨卡托投影的转换,并使用pandas库来读取和写入excel文件。以下是一段示例代码:
```python
import geopandas as gpd
import pandas as pd
# 读取Excel文件
df = pd.read_excel("input.xlsx")
# 创建GeoDataFrame,利用经纬度列创建Point对象
gdf = gpd.GeoDataFrame(df, geometry=gpd.points_from_xy(df['经度'], df['纬度']), crs="EPSG:4326")
# 将坐标系转换为墨卡托投影
gdf = gdf.to_crs("EPSG:3857")
# 将墨卡托投影下的x和y分别写入新的两列
df['x'] = gdf.geometry.x
df['y'] = gdf.geometry.y
# 写入Excel文件
df.to_excel("output.xlsx", index=None)
```
希望对您有帮助!
相关问题
将经纬度坐标(113.7793983,22.6576537)用墨卡托投影转换为平面坐标系下的坐标
可以使用以下公式将经纬度坐标(113.7793983,22.6576537)转换为墨卡托坐标:
x = lon * 20037508.34 / 180
y = log(tan((90 + lat) * pi / 360)) / (pi / 180)
y = y * 20037508.34 / 180
其中,lon表示经度,lat表示纬度。经过计算得到转换后的墨卡托坐标为:
(12661693.69, 2638746.73)
阅读全文