python - Geopandas to_crs 转换后给出错误的坐标

标签 python geopandas folium map-projections epsg

我正在尝试将 shapefile 绘制为 Folium map 上的点,但我正在努力让投影正确。数据位于 EPSG:28992 系统中,即 RD 新坐标系。这是一个投影坐标系,因此它给出的坐标以米为单位。为了将其绘制在 folium map 上,我需要将其转换为 EPSG:3857,如果我正确的话,它可以与度数一起使用。不幸的是,在使用函数 to_crs() 转换它之后,我得到了完全无意义的结果。

首先我加载数​​据:

import geopandas

WTG = geopandas.read_file('WTGs.shp')

print(WTG.head()) 显示:

  TEXTSTRING       geometry
0     A27-09       POINT (151809.960 484552.520)

这是正确的。它还具有正确的 CRS,如 print(WTG.crs) 的输出所示:

epsg:28992

现在,为了将其转换为其他 CRS,我使用以下简单代码:

WTG = WTG.to_crs(epsg=3857)

但是现在使用 print(WTG.head()) 检查结果,对于几何列来说完全是无意义的。

  TEXTSTRING       geometry
0     A27-09       POINT (594489.076 6863453.514)

几何点应以度为单位。换句话说,坐标应该在52和5左右。 不过 print(WTG.crs) 的输出是正确的:

epsg:3857

有人知道如何解决这个问题吗?或者我错过了什么?提前致谢!

最佳答案

EPSG 3857 的单位不是度而是米,因此没有理由假设转换是错误的。如果你想要学位,你需要4326。

该点位于乌得勒支北部,对吗?如果是这样,一切都会按预期进行。

关于python - Geopandas to_crs 转换后给出错误的坐标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62447897/

相关文章:

python - 使用 pypyodbc 对列名进行 SQL Server 编码

python - 提取访问多个(纬度,经度)的 ID 的最大距离

python - 如何使用 folium 创建 map 的静态骨架,其上层(标记)每小时更改一次,使用 flask 在网站上托管?

python - 如何将 GeoJsonTooltip 添加到 folium 中的 folium.Choropleth 类?

python - Geopandas 包含一个点的工作,但不是很多

python - 在 Python 3.6 中绘制来自 CSV 的经纬度

python - 中止列表理解

python - 有没有办法在 Python 中以特定用户身份执行命令?

python - 计算json数据每小时的平均值

python - 来自不同数据源的带有 HoverTool 工具提示的 Holoviews 图像