用python如何对地理坐标的geojson数据进行投影坐标转换
时间: 2023-12-10 21:39:14 浏览: 124
解决python gdal投影坐标系转换的问题
5星 · 资源好评率100%
对地理坐标的geojson数据进行投影坐标转换可以使用 Python 中的 `pyproj` 库。
首先,需要安装 `pyproj` 库,可以使用以下命令进行安装:
```
pip install pyproj
```
然后,可以使用以下代码进行投影坐标转换:
```python
import json
import pyproj
# 定义原始坐标系和目标坐标系
src_proj = pyproj.Proj(init='epsg:4326') # 原始坐标系是 WGS84
dst_proj = pyproj.Proj(init='epsg:3857') # 目标坐标系是 Web Mercator
# 读取 geojson 文件
with open('data.geojson', 'r') as f:
data = json.load(f)
# 对每个点进行坐标转换
for feature in data['features']:
geometry = feature['geometry']
if geometry['type'] == 'Point':
coords = geometry['coordinates']
x, y = pyproj.transform(src_proj, dst_proj, coords[0], coords[1])
geometry['coordinates'] = [x, y]
# 保存结果到新的文件
with open('data_transformed.geojson', 'w') as f:
json.dump(data, f)
```
这段代码将原始坐标系(WGS84)下的坐标转换为 Web Mercator 坐标系下的坐标,并将结果保存到新的 geojson 文件中。其中,`src_proj` 和 `dst_proj` 是原始坐标系和目标坐标系的定义,可以根据需要修改。注意,坐标系的定义要使用 EPSG 代码或 proj4 字符串。
阅读全文