F:\Program Files\Python311\Lib\site-packages\pyproj\crs\crs.py:141: FutureWarning: '+init=<authority>:<code>' syntax is deprecated. '<authority>:<code>' is the preferred initialization method. When making the change, be mindful of axis order changes: https://pyproj4.github.io/pyproj/stable/gotchas.html#axis-order-changes-in-proj-6 in_crs_string = _prepare_from_proj_string(in_crs_string)
时间: 2024-04-17 08:28:51 浏览: 139
这个警告是由于`+init=`语法在`pyproj`库的未来版本中被弃用。新的初始化方法是使用`<authority>:<code>`的形式。同时,在进行更改时,请留意坐标轴顺序的变化。具体信息可以参考`pyproj`文档中的[Gotchas](https://pyproj4.github.io/pyproj/stable/gotchas.html#axis-order-changes-in-proj-6)部分。
要解决这个警告,你可以使用新的初始化方法来定义投影坐标系。以下是一个示例代码:
```python
from shapely.ops import transform
from shapely.geometry import shape
from functools import partial
import pyproj
# 定义投影转换函数
project = partial(
pyproj.transform,
pyproj.CRS.from_string('EPSG:3857'), # OGR投影的3857坐标系
pyproj.CRS.from_string('EPSG:4326') # Shapely使用的WGS84坐标系
)
# 从OGR投影格式转换为Shapely格式
ogr_geometry = ... # 从OGR读取的3857投影坐标系的几何对象
shapely_geometry = transform(project, shape(ogr_geometry))
# 打印Shapely格式的几何对象
print(shapely_geometry)
```
在这个示例中,我们使用`pyproj.CRS.from_string`方法来定义投影坐标系。我们将`'EPSG:3857'`作为OGR投影的3857坐标系,将`'EPSG:4326'`作为Shapely使用的WGS84坐标系。
请注意,你需要将`...`替换为你从OGR读取的几何对象。确保你已经安装了最新版本的`pyproj`库,并根据你的实际需求进行必要的坐标系转换参数调整。
阅读全文