实时最新中国省市区县geoJSON格式地图行政边界数据Echarts地图数据(可精确到街道级)

geojson 数据下载地址:https://hxkj.vip/demo/echartsMap/

可下载的数据包含省级geojson行政边界数据、市级geojson行政边界数据、区/县级geojson行政边界数据、省市区县街道行政编码四级联动数据(可精确到乡镇/街道级)

该项目 github 地址:https://github.com/TangSY/echarts-map-demo,喜欢的话,可以给个star哦

一、通过API接口,实时获取最新中国省市区县geoJSON格式地图数据,可用于Echarts地图展示

1、效果图如下

2、示例代码

 downloadMapCode() {// 下载mapCode数据
      let mapCode = [], cityMapCode = [], provinceMapCode = [], provinceList = [], cityList = [],
        districtList = [];

      provinceList = this.codeList.filter(item => {
        return item.level === 'province'
      })
      cityList = this.codeList.filter(item => {
        return item.level === 'city'
      })
      districtList = this.codeList.filter(item => {
        return item.level === 'district'
      })

      districtList.forEach(item => {
        mapCode.push({
          name: item.name,
          cityCode: item.code,
          fatherCode: `${item.code.substring(0, 4)}00`,
          children: []
        })
      })

      // 筛选出直辖市下面的区县
      let direct = mapCode.filter(item => {
        return item.fatherCode.includes('0000');
      })

      for (let i in cityList) {
        let children = []
        for (let j in mapCode) {
          if (mapCode[j].fatherCode == cityList[i].code) {
            children.push(mapCode[j])
          }
        }
        cityMapCode.push({
          name: cityList[i].name,
          cityCode: cityList[i].code,
          fatherCode: `${cityList[i].code.substring(0, 2)}0000`,
          children: children
        })
      }
      cityMapCode = cityMapCode.concat(direct);

      for (let i in provinceList) {
        let children = []
        for (let j in cityMapCode) {
          if (cityMapCode[j].fatherCode == provinceList[i].code) {
 
  • 10
    点赞
  • 64
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
以下是使用 ECharts 导入 GeoJSON 文件数据绘制自定义地图的代码示例: 1. 首先,需要引入 ECharts 库和地图组件: ```html <script src="https://cdn.bootcdn.net/ajax/libs/echarts/5.1.1/echarts.min.js"></script> <script src="https://cdn.bootcdn.net/ajax/libs/echarts/5.1.1/echarts-gl.min.js"></script> <script src="https://cdn.bootcdn.net/ajax/libs/echarts/5.1.1/extension/dataTool.min.js"></script> <script src="https://cdn.bootcdn.net/ajax/libs/echarts/5.1.1/extension/bmap.min.js"></script> ``` 2. 然后,需要定义一个容器用于渲染地图: ```html <div id="map" style="width: 100%; height: 600px;"></div> ``` 3. 接着,使用 ECharts 的 `geoJson` 组件导入 GeoJSON 数据: ```js // 导入 GeoJSON 数据 $.getJSON('custom-map.geojson', function (geoJson) { echarts.registerMap('customMap', geoJson, { // 自定义地图的配置项 }); // 渲染地图 var chart = echarts.init(document.getElementById('map')); chart.setOption({ // 其他配置项 series: [ { type: 'map', map: 'customMap', // 使用自定义地图 // 其他配置项 } ] }); }); ``` 4. 最后,在 `getJSON` 方法中指定 GeoJSON 文件的路径,即可导入并使用自定义地图。 注意:在代码中使用了 jQuery 库的 `getJSON` 方法来加载 GeoJSON 数据,需要确保已经引入了 jQuery 库。如果不想使用 jQuery 库,也可以使用原生的 `XMLHttpRequest` 对象来加载 GeoJSON 数据。 以上就是使用 ECharts 导入 GeoJSON 文件数据绘制自定义地图的代码示例。可以根据实际情况修改自定义地图的配置信息和渲染方式。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值