跳至正文
首页 » 博客 » Choosing the Right Way to Flatten the Earth

Choosing the Right Way to Flatten the Earth

将我们的3D地球绘制到2D纸张或计算机显示器上的艺术和科学值得一本书不幸的是,我只有几百字。因此,我将主要集中在一个有争议的选择上: 墨卡托投影。

在评估地图投影时,我们不仅仅是在平地寻找一个合适的球体表示,因为地球不是一个球体。它是一个扁球体 (即两极比赤道平坦)。或者,至少,它是一个扁球体,而不是一个球体。但也有点颠簸。尽管如此,即使它是一个完美的球体,在一张平面纸上完全准确地表示整个地球的任务是完全不可能的。平面地图不能同时显示区域,形状,方向,方位,距离和比例完美。因此,我们有不同的地图投影,它们确实准确地代表了其中的一两个,我们选择最合适的或进行折衷投影。至少事情应该是这样的。

毫无疑问,你对墨卡托投影很熟悉 (即使你不知道这个名字)。长期以来,人们一直嘲笑它使两极附近的地方 (如格陵兰岛) 看起来很大,而赤道附近的地方 (如非洲的大部分地区) 看起来相对较小。有人认为,这导致了美国对最近埃博拉疫情的往返非洲旅行的误解。它甚至被一些人与种族主义联系在一起!

有趣的是,最近有几次尝试通过将美国,中国和印度等其他国家强加于人来纠正对非洲相对规模的明显误解 (例如,请参见此处此处 )。但是,Google地图,OpenStreetMap,Bing地图和其他地图使用了称为Web Mercator的Mercator投影的变体。我们不仅有与 “普通” 墨卡托地图相同的面积问题,地球被认为是一个完美的球体。

所以,考虑到这一切,为什么所有这些流行的 “slippy地图” 的应用程序使用 (变种) 墨卡托投影?我们应该用别的东西吗?

Bing地图软件架构师Joe Schwartz在这里对第一个问题给出了极好的详细答案。简而言之,使用的投影意味着无论您在哪里放大,北总是向上和向东。此外,投影 (几乎) 是共形的,这意味着 “小” 物体 (如建筑物) 具有正确的形状。这对于街道地图至关重要。

使用OpenStreeMap和IgniteUI ,我创建了两个带有位置标记的地图。为简单起见,我将以适当的比例显示每个屏幕截图。第一个显示了整个地球,2014年位置的所有城市群人口300,000或更多

第二张地图显示了伦敦市中心的一小部分。在这个相对较小的区域中,已经标记了七个伦敦地铁站的位置,但是我也为它们添加了自己的标记。右下角 (即东南角) 的洋红色圆圈是皮卡迪利线上的车站位置。黑色六边形标记不在皮卡迪利线上的车站。(我使用了这里给出的地理位置,显然不与地图上的标记完美对齐。)

Schwartz提出的观点以及这两个例子所说明的观点突出了我之前在更一般的数据可视化方面提到的一个重要问题: 上下文是关键。墨卡托投影对于显示全局数据集可能不是完全理想的。但是slippy地图也有其他用途。使用一个从a到B走几个街区 (例如,从一条火车线上的车站到另一条线上的车站) 将是一个困难得多,如果我们有一个非共形投影,小规模的物体被扭曲,角度都是错误的。

这并不是说墨卡托投影是每种情况下最好的全方位解决方案。不是.在理想的世界中,我们将使用等面积地图来显示与区域相关的数据。话虽如此,如果我们谈论的是小区域,墨卡托投影应该工作得很好。另一方面,我们永远无法使用Google地图,OpenStreetMap或Bing地图来绘制南极周围的数据,因为无法显示南极,这就是投影的本质。所有投影地图都有局限性,有些你可能只需要知道,有些是绝对的。

如果你打算把世界地图贴在教室的墙上,有比墨卡托更好的选择。就我个人而言,我喜欢罗宾逊投影的妥协。国家地理放弃了罗宾逊1998年,转而使用温克尔-特里佩尔的投影,此前还使用了范德格林的投影。甚至有一些支持国家地理选择的相当复杂的数学。当他们想专注于海洋时,他们就决定了完全不同的事情。重要的是要认识到, 所有的2D地图都是错误的,但有些是有用的特定目的。

尝试我们的jQuery HTML5控件为您的web应用程序,并立即利用其惊人的数据可视化功能。立即下载免费试用版!

</p