很幸运,之前也做过一个类似的项目,使用的技术主要是 mbostock/d3 · GitHub 和 mbostock/topojson 路 GitHub,地图数据使用 nvkelso/natural-earth-vector · GitHub
全部都是GitHub上的开源项目,主要使用svg技术实现。
Let’s Make a Map 这篇文章很详尽的说明了如何使用 d3, topojson 绘制一个svg的地图。
最后地图有一个放大省份的效果,可以使用d3的 transition 动画,放大局部区域就可以了。