经纬度一格多少米:五份村界包换算实测
技术专栏 · 数据处理 · 2026-10-22
「1 度等于 111 公里」是 GIS 入门第一课,但它只对了一半:纬度的 1 度确实稳定在 111 公里附近,经度的 1 度则随纬度不断缩水——在广州缩到 102 公里,到天津蓟州只剩 85 公里。做 bbox 筛选、距离估算、范围裁剪时,这个差异直接决定结果对不对。本文用五份真实村界包的 bbox 把换算公式验证一遍,附速查表。
纬度好办:110.7 到 111.1 公里
纬线是大圆,1 度纬度的地面距离从赤道到两极只微增——实测广州从化区(23.37° 至 23.94°N)每度 110,753 米,蓟州区(39.75° 至 40.25°N)每度 111,035 米,差距不到 0.3%。做距离估算时用 111 公里通吃纬度,误差可忽略。
经度则完全不同。经线圈在赤道最大,向两极递减到零。1 度经度的地面距离等于赤道值乘以当地纬度的余弦——广州 23°N 缩到 102 公里,武汉 31°N 缩到 96 公里,天津蓟州 40°N 只剩 85 公里。如果拿着「111 公里」去算经度差,在北京会偏出两成半。
五份村界包的 bbox 实测
用本站五份村界包的包围盒做了一轮实测。每份包取 bbox 的经差与纬差(度),再乘以对应系数换算成公里:
| 村界包 | 中心纬度 | 经差(°) | 纬差(°) | 东西(km) | 南北(km) |
|---|---|---|---|---|---|
| 广州市 | 23.24°N | 1.102 | 1.384 | 112.8 | 153.3 |
| 从化区 | 23.65°N | 0.781 | 0.566 | 79.7 | 62.6 |
| 铜鼓县 | 28.61°N | 0.651 | 0.453 | 63.7 | 50.2 |
| 武汉市 | 30.67°N | 1.380 | 1.390 | 132.2 | 154.1 |
| 蓟州区 | 40.00°N | 0.662 | 0.498 | 56.5 | 55.3 |
换算速查表
两条公式覆盖所有场景:
// 纬度 1° 的米数(随纬度微增,可近似 110,900)
function mPerDegLat(lat) {
const r = lat * Math.PI / 180;
return 111132.92 - 559.82 * Math.cos(2 * r)
+ 1.175 * Math.cos(4 * r) - 0.0023 * Math.cos(6 * r);
}
// 经度 1° 的米数(随纬度余弦缩水)
function mPerDegLon(lat) {
const r = lat * Math.PI / 180;
return 111412.84 * Math.cos(r)
- 93.5 * Math.cos(3 * r) + 0.118 * Math.cos(5 * r);
}
常用纬度的速查值如下。「经/纬比」一列就是经度与纬度米数的比值——30°N 约 0.87,40°N 约 0.77:
| 纬度 | 1° 纬度(米) | 1° 经度(米) | 经/纬比 |
|---|---|---|---|
| 20°N | 110,704 | 104,647 | 0.945 |
| 23.65°N | 110,753 | 102,025 | 0.921 |
| 25°N | 110,773 | 100,950 | 0.911 |
| 28.55°N | 110,828 | 97,858 | 0.883 |
| 30°N | 110,852 | 96,486 | 0.870 |
| 35°N | 110,941 | 91,288 | 0.823 |
| 40°N | 111,035 | 85,394 | 0.769 |
| 45°N | 111,132 | 78,847 | 0.709 |
三条实操军规:纬度方向放心用 111 公里,全球误差不超过 0.5%;经度方向必须乘以当地余弦,否则高纬度偏出两成以上;算面积时经纬度系数要配对出现——漏掉经度余弦就是面积虚胖的根源(机制与实测数据见《村界面积怎么算才准:三种公式的实测差距》)。村界数据本体在村界数据 · 按市各页按市取用。
常见问题
- 经纬度 1 度等于多少公里?
- 纬度 1 度几乎不变:全球范围约 110.7 到 111.1 公里。经度 1 度则随纬度缩水,等于 111.320 乘以纬度的余弦——赤道约 111.3 公里,北纬 30 度约 96.5 公里,北纬 40 度约 85.4 公里。用 111 公里通吃经度在高纬度会偏出两成。
- 为什么经度的 1 度会随纬度变小?
- 经线是过南北极的大圆,纬度变化时宽度不变;纬线圈则从赤道的最大值向两极递减,到极点缩成一点。同一纬度上转 1 度经度,走过的地面距离就是赤道的 cos(纬度) 倍——纬度 60 度时只剩一半。
- 做 bbox 范围筛选时怎么换算?
- 把目标范围(如 5 公里)换算成度:纬度方向用 5 公里除以 110.9 公里约得 0.045 度;经度方向用 5 公里除以 111.32 乘以当地余弦。或者反过来:已知 bbox 的度数跨度,乘以对应系数换回公里判断实际大小。关键是经度和纬度的系数不同,且经度系数随纬度变化。
- Web 墨卡托坐标上算距离为什么不对?
- Web 墨卡托把经纬度线性映射到平面,纬度越高地面被拉伸得越厉害。在墨卡托坐标上量距离,高纬度的结果会显著偏大——这与面积虚胖的机制相同。量距离或面积时,应把坐标转回经纬度后用球面公式(Haversine 或球面鞋带),或使用等积/等距投影。
- 本文实测的村界包在哪里下载?
- 本文实测的广州、铜鼓、武汉、蓟州四份村界包均出自本站村界商品线,按市、按县在「村界数据 · 按市」与「按区县」页取用。所有包坐标为 WGS84 经纬度,bbox 与村级码字段完整,可直接复现本文的换算与统计。