GeoJson网格状矢量面数据(Polygon)

网格状的 GeoJson 矢量面数据,结构清晰、属性丰富,适合做地图可视化那种需要区域划分的场景。它用的是 Polygon 类型的图形,像一个个拼图块似的拼成地图,里面还带了namecolorrotationopacity这些属性,定制样式方便。文件有两个版本,polygon_25W.jsonpolygon_1W.json,数据量一个挺大、一个比较轻,你可以根据场景选择加载哪个。

LeafletMapbox GL JS这些库来再合适不过了。加载 GeoJson、设置样式、交互操作都不难。像下面这样,用fetch拉数据,再用L.geoJSON渲染:

fetch('polygon_25W.json')
  .then(response => response.json())
  .then(data => {
    let layerGroup = L.layerGroup().addTo(map);
    data.features.forEach(feature => {
      let polygon = L.geoJSON(feature, {
        style: {
          color: feature.properties.color,
          fillOpacity: feature.properties.opacity
        }
      }).addTo(layerGroup);
    });
  });

不过要注意,大数据量加载的时候卡,你可以考虑用分片加载、懒加载,或者用Web Worker来异步解析,体验会流畅不少。

,如果你在做地图项目、或者需要展示一些分区域的数据,这份 GeoJson 资源还是挺值得一试的。

zip 文件大小:5.81MB