坐标系转换

地图帮2026-02-10

坐标系转换

同一个地方,三种"说法"

你可能遇到过这种困惑:同一家店,在高德地图上查到的坐标是 104.065735, 30.659462,在百度地图上查到的是 104.072213, 30.665502,用 GPS 手持设备测的又是另一组数字。

这不是谁查错了 —— 是因为中国存在三套不同的坐标系,它们各自对同一个位置的"编号方式"不一样:

  • GCJ02(火星坐标)—— 高德地图和腾讯地图用的。国家测绘局的标准,对 GPS 坐标做了一层加密偏移。
  • BD09(百度坐标)—— 百度地图用的。在 GCJ02 基础上又做了一次偏移,所以跟高德的也对不上。
  • WGS84(GPS 坐标)—— 国际标准。GPS 设备、Google Earth、学术论文用的都是这个。

所以当你把高德查回来的数据拿去做论文,或者把百度的数据拿去跟高德的数据叠加 —— 如果不转坐标系,位置就会"飘"。差个几十米到几百米不等。

坐标系转换就是解决这个问题的 —— 帮你在三种坐标系之间来回"翻译"。


六种转换方向

三种坐标系两两互转,一共六种方向:

  • gcj02 → wgs84
  • gcj02 → bd09
  • wgs84 → gcj02
  • wgs84 → bd09
  • bd09 → wgs84
  • bd09 → gcj02

怎么用

导入你的 Excel 或 CSV 文件,然后告诉它坐标在哪一列。

坐标列有两种格式:

  • 合并列 —— 经纬度写在一列里,用逗号隔开,比如 106.333,34.222
  • 分开列 —— 经度一列、纬度一列

选好坐标列,再选一下转换方向(比如"gcj02 转 wgs84"),点「开始转换」就行。

转换完之后,你的数据里会多出三列新字段 —— 比如你选的是转 WGS84,就会多出 wgs84_loc(合并坐标)、wgs84Lng(经度)、wgs84Lat(纬度)。原来的列不受影响。

如果目标坐标系是 WGS84,系统还会自动创建带有地理信息的数据格式,你可以直接导出为 Shapefile 或 GeoJSON。


⚠️ 这里很多人会犯一个错:数据已经是 WGS84 坐标了,又选了"gcj02 转 wgs84"再转一次 —— 结果点位往回偏了。转之前先确认你的数据是从哪个平台来的:高德/腾讯 → GCJ02,百度 → BD09,GPS 设备/Google Earth → WGS84。搞不清就在地图上抽查几个点的位置。


性能和限制

坐标系转换是纯数学运算,不需要调接口,所以非常快。千万级数据也能处理,而且没有会员限制 —— 免费用户也能不限量使用。


做完了,检查一下

如果你的数据表里多了三列新坐标(比如 wgs84_locwgs84Lngwgs84Lat),在地图上抽查几个点位置正确——说明坐标转换已经搞定了。

接下来,你可以把转好坐标的数据送去 门店绘 画地图,或者用 矢量数据转换助手 转成 Shapefile 导入 GIS 软件。

最后更新时间 3/21/2026, 1:45:47 PM