导言
TopoJson 是 GeoJson 按拓扑学编码后的扩展形式。使用点、弧(有向线)来表示图形。
TopoJson结构如下
下面通过js脚本来批量下载地图TopoJson数据文件
1、获取地图topoJson数据
获取全国省市区地理信息(返回json数据)
https://gw.alipayobjects.com/os/alisis/geo-data-v0.1.1/administrative-data/area-list.json
该链接用于主要获取省市区的adcode的值(用于后续获取该省市区的topoJson数据)
打开上述链接,可以看到地理信息(以广东省为例)
根据 level 和 adcode 获取地图的TopoJson数据
中国地图的topoJson数据链接,level为country,adcode为100000
https://gw.alipayobjects.com/os/alisis/geo-data-v0.1.2/choropleth-data/country/100000_country_province.topo.json
广东省地图的topoJson数据链接,level为province,adcode为440000
https://gw.alipayobjects.com/os/alisis/geo-data-v0.1.2/choropleth-data/province/440000_province_city.topo.json
广州市地图的topoJson数据链接,level为city,adcode为440100
https://gw.alipayobjects.com/os/alisis/geo-data-v0.1.2/choropleth-data/city/440100_city_district.topo.json
如果不需要批量下载,只需要单个地图的topoJson数据,可以根据相应的 level 和 adcode 改变url,并直接访问 ctrl+s 直接保存即可
2、按需批量获取省市区地图topoJson数据
根据上述原理,我们可以通过编写js脚本来批量下载地图topoJson数据
新建一个html文件,这里直接附上代码(主要关注script标签里的代码)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content