什么是 Leaflet 和 Mapbox,两者的区别或用法是什么?他们的 API 的主要区别是什么?
4 回答
另一个答案很好,但有点过时,因为 Mapbox 在两年内发生了重大变化。
Leaflet是一个 JavaScript API,用于在互联网上制作交互式地图。它可以与 Mapbox 集成,还可以与许多其他瓦片源(如OpenStreetMap)和其他数据源(如GeoJSON 叠加层)集成。
Mapbox是一家提供地图服务和技术的公司 - 其中一项服务Map tiles可以在 Leaflet 中用作基本地图 - 就像您在 Google Maps API 中使用 Google Map tiles 一样。Mapbox 还开发了一个名为Mapbox.js的 Leaflet 插件,它可以很容易地与他们的图块集成,同时仍然使用 Leaflet 中的所有强大功能。我们也支持 Leaflet 的开发,因为维护者在这里工作。
您可以在不使用 Mapbox 瓦片的情况下使用 Mapbox.js,并将 Leaflet 与 Mapbox 瓦片一起使用——它们完全可以混合搭配。Mapbox.js 的添加,如TileJSON和UTFGrid支持,使得与 Mapbox 地图集成更容易,但不会改变 Leaflet 的现有行为。
更新(2014-08-22):
我的回答有点过时了。有关Leaflet 和 MapBox 之间的最新比较,请参阅@tmcw 的答案。
原始答案(2012-09-05):
你在比较苹果和橘子。
传单“只是”一个地图 API。它本身不提供数据/地图。Mapbox 是一种设计和发布地图的服务,其最终结果是存储在云中的一堆生成的地图图块(以及一些 json 文件)。
因此,例如,您可以使用 Leaflet 中的 Mapbox 地图。例子
无论如何,Mapbox 是由一家名为 DevelopmentSeed 的公司开发的,他们有一个地图 API,它确实是 Leaflet 的竞争对手,称为Modest Maps,虽然更简单且功能更少。
所以,总结一下:
- 传单 -> 地图 API ,没有数据
- MapBox -> 设计和发布地图
你可以想到
Mapbox作为地图的 GitHub
OpenStreetMaps作为git
作为git客户端的传单
和mapbox.js作为“Mac 的 GitHub”
让我尝试解释更多:
OpenStreetMaps (OSM)是一个用于创建/显示地图和地理数据的开源项目;就像git允许为源代码控制创建提交树一样。它们都是处理数据的软件。
Mapbox是一家基于 OSM 的地图的托管公司,它具有更多的功能,而不仅仅是托管;这与GitHub用于git项目的情况相同。
Leaftlet是一个库,使用户能够使用 OSM 托管服务在其浏览器上显示/使用基于 OSM 的地图;就像任何git客户端使用git托管服务一样。
mapbox.js是一个增强的库,用于显示/使用托管在mapbox.com上的地图,它已经基于OSM;就像 “GitHub for Mac”客户端是由 GitHub 为托管在其服务器上的项目提供接口。
希望这能澄清你的疑虑。
这是一个旧帖子,这是我的更新。
Mapbox 现在正在使用传单作为他们的官方 JavaScript API(我不知道内部工作是什么,但是......我根本无法访问 Modest Maps,而且 Mapbox 在他们当前的网站上没有提及关于 Modest Map 的任何内容) .