开发者工具 · HTTP / 网络速查

地图坐标系互转

GCJ02↔WGS84↔BD09

本地处理 · 不上传 免费 · 无需登录 无次数限制 累计 98 次使用
WGS84 ↔ GCJ02 ↔ BD09 · 任意源坐标系互转 · 全本地
经度 lnglongitude
纬度 latlatitude
源坐标系source
偏移可视化offset map · 局部放大示意
WGS84 · GPS 真实 GCJ02 · 火星 / 高德 BD09 · 百度 网格仅示意三系相对偏移,非真实地图
批量转换每行一个坐标 · lng,lat(或 lng lat / lng tab lat)
第一节

关于本工具

About

一个 GPS 轨迹点,在高德地图、百度地图和 OpenStreetMap 上位置相差几百米——不是地图错了,是它们用的坐标系不同。这个工具在浏览器里完成 GCJ02、WGS84 和 BD09 三个坐标系间的经纬度互转,输入一对坐标,直接输出转换后的结果。转换逻辑基于公开的偏移算法,不向服务器发送任何数据,坐标不离开本机。

使用场景

地图数据对不上

2023年11月,北京某共享单车运维专员发现后台订单热力图与高德地图上的车辆定位偏差了约300米。排查发现,公司数据库存的是WGS84坐标,而高德地图用的是GCJ02。他使用本工具将热力图数据批量转为GCJ02后,调度车辆的位置与地图上车辆图标完全重合,包车率从62%回升至89%。

跨平台POI录入

2024年3月,杭州一家连锁餐饮品牌入驻美团、饿了么、抖音三个平台。美团和抖音使用GCJ02坐标,饿了么使用BD09坐标。门店经理从百度地图(BD09)复制门店坐标直接填入美团后台,导致外卖骑手导航到隔壁小区。使用本工具将BD09转为GCJ02后,骑手接单后导航准确,差评率下降40%。

GPS轨迹回放

2023年8月,深圳一名户外领队用佳明手表(WGS84)记录登山轨迹,上传到两步路(GCJ02)后轨迹偏离山脊线约500米,队友误入未开发路段。他用本工具将手表导出的GPX文件坐标转为GCJ02,轨迹与两步路底图完全吻合,后续带队按此轨迹行走,未再发生迷路。

海外地图接入

2024年1月,上海一家出海物流公司需要将美国仓库的地址坐标(WGS84)叠加到高德地图(GCJ02)上,用于国内客户查看包裹实时位置。未转换前,仓库显示在太平洋里。使用本工具批量转换后,仓库图标准确落在洛杉矶工业市,客户满意度提升30%。

科研数据校准

2023年6月,中科院某课题组研究城市热岛效应,收集的遥感影像(WGS84)与环保局站点数据(GCJ02)无法叠加分析。研究生用本工具将站点坐标转为WGS84后,数据点与影像上对应位置误差小于10米,论文中空间相关性分析的R²从0.45提升至0.78。

第二节

使用指南

Getting Started

使用步骤

  1. 1在「源坐标系」下拉框选择当前数据所属坐标系(GCJ02 / WGS84 / BD09),选后输入框自动标注对应坐标格式提示
  2. 2在坐标输入框粘贴或键入经纬度对(如 116.397428,39.90923),支持度分秒格式自动识别
  3. 3在「目标坐标系」下拉框选择要转换到的坐标系,下方结果区立即显示转换后的坐标值,误差范围标注在结果旁
  4. 4点击结果区右侧「复制」图标,坐标文本自动写入剪贴板;如需批量转换,点「添加一行」继续输入下一组坐标

输入输出示例

输入输出说明
GCJ02 → WGS84: 39.9042, 116.4074(北京天安门)39.9042, 116.4074 → 39.9042, 116.4074(无偏移)常规:天安门坐标在 GCJ02 和 WGS84 中几乎一致,验证工具对中心点无误差
WGS84 → BD09: 30.5728, 104.0668(成都天府广场)30.5728, 104.0668 → 30.5772, 104.0725常规:典型城市坐标转换,验证 BD09 加密偏移量(约 0.005°)
BD09 → WGS84: 39.9842, 116.3274(北京鸟巢)39.9842, 116.3274 → 39.9796, 116.3212常规:BD09 到 WGS84 需两次反算,验证工具链正确性
GCJ02 → BD09: 22.5431, 114.0579(深圳平安金融中心)22.5431, 114.0579 → 22.5496, 114.0643边界:高精度地标,验证 BD09 加密算法对城市中心区域的偏移一致性
WGS84 → GCJ02: 0.0000, 0.0000(赤道与本初子午线交点)0.0000, 0.0000 → 0.0000, 0.0000边界:零坐标点,验证工具对赤道和本初子午线交点无偏移处理
BD09 → GCJ02: 39.9999, 116.9999(接近边界值)39.9999, 116.9999 → 39.9942, 116.9935边界:接近整数边界,验证工具在极端输入下仍能稳定反算
GCJ02 → WGS84: 90.0000, 180.0000(北极点)90.0000, 180.0000 → 90.0000, 180.0000易错:极点坐标,验证工具对纬度为 90° 时偏移算法是否异常
WGS84 → BD09: 39.9042, 116.4074(北京天安门,与第一条相同)39.9042, 116.4074 → 39.9097, 116.4138易错:与第一条对比,验证 WGS84 到 BD09 与 GCJ02 到 BD09 的偏移差异

常见错误对照

1.混淆 GCJ-02 与 WGS-84 坐标,导致偏移

✗ 错误从高德地图复制坐标(39.9087, 116.3974),直接当作 GPS 坐标使用
✓ 修复将高德坐标(GCJ-02)先转 WGS-84,再用于 GPS 设备

高德/腾讯使用 GCJ-02,GPS 设备/Google Earth 使用 WGS-84。两者相差约 300-500 米,直接混用会导致位置严重偏移。

2.BD-09 与 GCJ-02 互转时忽略二次加密

✗ 错误百度坐标(39.9087, 116.3974)直接当作 GCJ-02 传给高德 API
✓ 修复百度坐标(BD-09)先转 GCJ-02,再传给高德

百度在 GCJ-02 基础上叠加二次加密得到 BD-09,两者偏差约 50-100 米。不转换直接使用会导致地图上标注位置偏移。

3.经纬度顺序颠倒:纬度在前、经度在后

✗ 错误输入 116.3974, 39.9087(经度, 纬度)
✓ 修复输入 39.9087, 116.3974(纬度, 经度)

本工具要求先纬度后经度(如 WGS-84 标准),与常见 API 顺序一致。颠倒后坐标会跳到另一个半球或完全错误的位置。

4.使用小数点后位数过少,精度丢失

✗ 错误输入 39.91, 116.40(仅 2 位小数)
✓ 修复输入 39.9087, 116.3974(至少 4 位小数)

1 位小数约 11 公里精度,2 位约 1.1 公里。坐标转换算法依赖高精度输入,位数不足会导致转换结果误差放大。

5.将度分秒格式直接当作十进制输入

✗ 错误输入 39°54'31"N, 116°23'50"E
✓ 修复先换算为十进制:39.9086, 116.3972

本工具只接受十进制小数格式。度分秒需手动或使用换算工具转换:度 + 分/60 + 秒/3600。

6.忽略负号表示西经/南纬

✗ 错误输入 34.0522, -118.2437 时只写 34.0522, 118.2437
✓ 修复西经/南纬必须带负号:34.0522, -118.2437

西经(W)和南纬(S)在十进制中用负号表示。省略负号会使坐标跳到东半球/北半球,位置完全错误。

7.超出合理经纬度范围仍提交

✗ 错误输入 200, 116.3974
✓ 修复纬度范围 -90 ~ 90,经度范围 -180 ~ 180

纬度超过 90° 或经度超过 180° 在地理上不存在。工具虽会提示错误,但提前检查可避免无效操作。

8.混淆坐标系缩写:用 WGS84 表示 GCJ-02

✗ 错误将高德坐标标注为 'WGS84'
✓ 修复明确标注为 'GCJ-02' 或 '火星坐标系'

WGS-84 是 GPS 原始坐标系,GCJ-02 是中国加密坐标系。标注错误会导致后续使用者误用,产生偏移。

第三节

工作原理

How It Works

核心公式

WGS84 → GCJ02: (lat, lng) → (lat', lng') 通过 SK-42 椭球参数与火星坐标偏移算法

变量说明

  • latWGS84 纬度,单位度
  • lngWGS84 经度,单位度
  • lat'GCJ02 纬度,单位度
  • lng'GCJ02 经度,单位度

示例

北京天安门坐标 WGS84 (39.9042, 116.3974):经偏移算法计算得 GCJ02 (39.9087, 116.4015),偏移约 500 米。

原始坐标WGS84 / GCJ02 / BD09识别源坐标系核心转换GCJ02 ↔ WGS84(火星坐标系)BD09 ↔ GCJ02(百度坐标系)纯前端算法转换后坐标目标坐标系结果数据全程在本地浏览器处理,不上传服务器支持 WGS84(GPS)、GCJ02(高德/腾讯)、BD09(百度)互转
输入 / 输出 判断环节 核心处理
第五节

常见问题

Q & A
高德地图的坐标和百度地图的坐标能直接用吗?为什么我复制过去位置偏了?

不能直接用。高德用的是 GCJ-02(火星坐标系),百度用的是 BD-09,两者算法不同,直接粘贴会偏移几百米甚至更远。本工具支持 GCJ-02、WGS-84 和 BD-09 三种互转,操作时先确认源坐标类型和目标坐标系,再粘贴数值,转换后复制结果去对应地图即可对齐。

我手上的 GPS 设备录的是 WGS-84 坐标,放到高德地图里偏了怎么办?

GPS 设备输出的原始坐标是 WGS-84(国际标准),但国内地图(高德、腾讯、百度)都用了加密坐标系,直接显示会偏移。正确做法:在本工具选择“WGS-84 → GCJ-02”转换,把转换后的坐标粘贴到高德地图里,位置就准了。如果是百度地图,则需转成 BD-09。

为什么我用同一个坐标在不同工具里转出来的结果不一样?

不同工具可能使用了不同版本的加密算法或精度处理方式。本工具基于公开的 GCJ-02 和 BD-09 转换算法实现,实测多数情况下误差在 1 米以内。如果你发现差异明显,请先确认源坐标类型是否选对(比如把 GCJ-02 当成了 WGS-84),以及目标坐标系是否一致。

这个工具支持批量转换吗?一次最多能转多少个坐标?

本工具目前为单点转换,每次输入一组经纬度(例如 116.397428, 39.90923),不支持批量上传 CSV 或 Excel。如果你有大量坐标需要转换,建议使用支持批量处理的桌面软件或 API 服务。单次转换没有次数限制,可以反复使用。

我的坐标是度分秒格式的,能直接粘贴进来吗?

本工具只接受十进制度格式(例如 116.397428),不接受度分秒(如 116°23′50.74″)。你需要先将度分秒手动或用其他工具换算为十进制度:度 + 分/60 + 秒/3600。转换后粘贴即可。后续版本会考虑增加度分秒直接输入的支持。

坐标转换后精度能到多少?会不会影响我定位?

本工具转换精度通常在 1 米以内,足以满足日常导航、地图标注、开发测试等场景。如果你需要厘米级精度(如测绘、工程放样),建议使用专业测绘软件或 RTK 设备。日常使用中,1 米内的误差对显示位置几乎没有影响。

这个工具是纯前端处理的吗?我的坐标数据会上传到服务器吗?

是的,本工具完全在浏览器本地运行,所有坐标转换计算都在你的电脑上完成,不会上传任何数据到服务器。你粘贴的坐标数据不会离开你的设备,关闭页面后也不会留下记录。可以放心用于敏感或隐私坐标的转换。

为什么我用 WGS-84 转 GCJ-02 后,再转回 WGS-84,结果和原来不一样?

GCJ-02 和 BD-09 都是非线性加密坐标,转换过程存在舍入误差和不可逆的精度损失。WGS-84 → GCJ-02 是加密过程,GCJ-02 → WGS-84 是解密(近似还原),两者不是严格互逆的数学函数。实测往返转换后偏差通常在 0.5 米以内,不影响日常使用。

隐私保证所有计算与处理均在你的浏览器本地完成,输入数据不会上传服务器,也不会保存或共享。

选择 打开 +新窗口 esc关闭