Leaflet插件对TopoJson的解析和支持

1.需引入js:

<script src="https://d3js.org/topojson.v1.min.js"></script>

可下载到本地,直接引入。

2.要使用这个js,得新创建一个新的图层:

const topoLayer = new L.TopoJSON();

3.js代码解析部分:

L.TopoJSON = L.GeoJSON.extend({  

  addData: function(jsonData) {    

    if (jsonData.type === 'Topology') {

      for (key in jsonData.objects) {

        geojson = topojson.feature(jsonData, jsonData.objects[key]);

        L.GeoJSON.prototype.addData.call(this, geojson);

      }

    }    

    else {

      L.GeoJSON.prototype.addData.call(this, jsonData);

    }

  }  });

4.怎么调用上面的解析部分:

function addTopoData(topoData) {  

  topoLayer.addData(topoData);

  topoLayer.addTo(map);

备注:

1.topoLayer是上面创建的那个图层

2.addData是上面解析部分addData方法,将json数据加载到topoLayer图层上.

上一篇:javascript-如何在一个html页面上显示多个地图


下一篇:javascript-根据需要在点击时填写传单弹出窗口