地图创建与高级投影应用指南
1. 地图创建基础
1.1 GeoJSON与TopoJSON创建地图
可以使用GeoJSON来创建基于SVG的地图,也能利用TopoJSON文件重构GeoJSON对象并创建地图。还能创建突出地点之间拓扑关系的地图,例如突出相互连接的国家,并显示特征之间的特定边界。
1.2 使用Mapbox和D3
基于SVG的地图适用于数据可视化项目,但有时需要更高级的地图功能,如搜索地址或位置、获取街道级信息或显示卫星图像。将可视化与地图提供商(如Google Maps、Yahoo! Maps或Mapbox)集成是提供这些功能的便捷方式。以下将介绍如何将D3与优秀的地图提供商Mapbox集成。
1.2.1 Mapbox概述
Mapbox是一个用于为Web和移动应用程序创建自定义地图的在线平台,提供街道地图、地形和卫星视图图块。其街道地图使用OpenStreetMap的数据,这是一个由社区驱动的开放数据存储库,更新频繁且信息准确。Mapbox的独特之处在于允许用户自定义地图视图,用户可以自定义地图中每个特征的视觉方面,Web平台和桌面工具TileMill都可用于地图定制。
要使用Mapbox,需要创建一个账户。免费计划允许创建地图、添加标记和特征,每月最多可获得3000次视图。可访问https://www.mapbox.com 创建账户。Mapbox会统计地图的视图次数,每个计划对每月视图数量都有限制。如果使用Mapbox创建的可视化变得流行,可能需要升级账户,当接近每月配额时会收到通知。
Mapbox JavaScript API作为Leaflet插件实现,