墨卡托投影:属性、用途与局限
1569 年为航海而作的保角圆柱投影:等角航线在图上是直线,代价是面积按 sec²(纬度) 膨胀,84°N 处已达 91.5 倍。
说明
1569 年,Gerardus Mercator 发表《Nova et Aucta Orbis Terrae Descriptio》。它解决的是一个具体的航海问题:让恒定罗盘方向的航线(等角航线,loxodrome)在图上画成直线,水手可以拿直尺量出航向。
为了做到这一点它必须保角,即地图上任意一点附近的角度关系与地面一致。纬线间距按 sec(纬度) 向两极加速拉开,正是为了抵消经线被强行拉平后产生的横向拉伸。这不是缺陷,是让直线航向成立的那一步。
投影属性
- 投影族
- 保角圆柱
- 图幅宽高比
- 1.288:1
- 绘制范围
- 北纬 85.1° 至南纬 70.0°
- 极线长度
- 极点无法绘制
- 形状不失真的纬线
- 处处
- 面积失真达 2 倍
- 45.0°
- 形状失真达 2 倍
- 从不
- 按定义恒定的一栏
- 形状失真
经线是等间距的竖直线,纬线是水平线,相邻两条纬线的间距按 sec(纬度) 向两极迅速拉开。经纬网处处正交——这是保角的直接后果,不是画法上的巧合。
保角:本站在 0°、30°、45°、60°、72°、84° 上测得的形状失真全部是 1.00,一个例外也没有。打开失真椭圆网格,每一个椭圆都是正圆。
面积按 sec²(纬度) 膨胀:30° 处 1.33 倍,45° 处正好 2 倍,60° 处正好 4 倍,72° 处 10.5 倍,84° 处 91.5 倍,到 85.05° 已是 134 倍。
沿赤道的距离是准确的。离开赤道后横向和纵向按同一个 sec(纬度) 一起放大——这是「保角」的另一种说法,也是面积指数正好是长度指数平方的原因。
实测失真
| 纬度 | 0° | 30° | 45° | 60° | 72° | 84° |
|---|---|---|---|---|---|---|
| 面积失真 | 1.00 | 1.33 | 2.00 | 4.00 | 10.5 | 91.5 |
| 形状失真 | 1.00 | 1.00 | 1.00 | 1.00 | 1.00 | 1.00 |
两栏都以这一种投影自身赤道处的实测尺度为 1。它们只能和同一张表里的数字比较,不能拿去和另一种投影的读数并排——每种投影的基准是它自己。
使用方法
海图。等角航线画成直线这一条至今没有别的投影能替代,国际海图仍以墨卡托为主。
赤道附近的大比例尺制图:印度尼西亚、赤道非洲一带,在小范围内它的面积误差可以忽略。
网络地图。Web 墨卡托(EPSG:3857)是几乎所有在线地图的默认坐标系——保角意味着在任意缩放级别下建筑物和道路的形状都不歪。
局限性
极点画不出来:sec² 在 90° 发散。网络地图统一截在 85.051129°(约 85°03′04″),本站量到这条纬线上的面积失真是 134 倍。
在这条截断纬线上,墨卡托的世界正好是一个正方形,本站量出来的宽高比是 1.000。工具里画的是北纬 85.1° 到南纬 70.0° 的一段,因为目录里没有对象到得了南纬 56° 以南。
面积完全不能用。格陵兰在图上看起来比非洲大,真实面积只有非洲的十四分之一。任何按国土面积着色的专题图都不该用这张底图。
参数
本站的构造(w、h 为画布尺寸,sphere 为整球):
geoMercator().scale(w / 2π).translate([w / 2, scale * mercatorY(85.051129)])Web 墨卡托值得单独说一句:它把球面墨卡托公式直接套在 WGS 84 的大地坐标上,球半径取 6378137.0 米。这样做的后果是它其实不再严格保角,离开赤道后距离和方向都有偏差——但因为所有主流地图服务都这么做,它成了事实标准。
本站画的是球面墨卡托,不是 Web 墨卡托的椭球近似。在本站的精度目标下两者的差别看不出来;在测绘和法定用途上不能混用。