1、 首先访问,https://datav.aliyun.com/portal/school/atlas/area_selector
获得你要合并的区域两个或两个以上。

2、本文选择泰安的连个区域泰山区和岱岳区

3、现在 npm安装 geojson-merge库:(此步骤需要安装nodejs ,自行搜索安装)

npm i @mapbox/geojson-merge
 

编写文件convert.js

var geojsonUtil = require("@mapbox/geojson-merge");
var fs = require("fs");

var fileDir = "./json/";

// 该方法是异步执行的
fs.readdir(fileDir, { withFileTypes: true }, function (derr, files) {
  if (derr) {
    return console.error(derr);
  }
  var datas = [];
  files.forEach(function (file) {
    // 读取每个文件
    if (file.isFile()) {
      // 注意name只能获取到文件名称
      // 注意同步读取的结果是string类型,需要转换为json对象
      datas.push(JSON.parse(fs.readFileSync(fileDir + file.name, "utf8")));
    }
  });
  // merge之后得到的是json对象,写入数据文件时需要通过stringify方法转换为string类型
  var mergedJson = geojsonUtil.merge(datas);
  fs.writeFile(
    "./outfiles/内存方式合并结果.json",
    JSON.stringify(mergedJson),
    () => {
      console.log("文件合并完成");
    }
  );
});

4、新建目录json 和outfiles 

5、执行

node .\convert.js

完成后会在outfiles 文件夹里面生成合并后的文件,但是此文件有重复点位。需要去掉。

6、把“内存方式合并结果.json” 上传到mapshaper.org

https://mapshaper.org/icon-default.png?t=O83Ahttps://mapshaper.org/

7、打开console 执行命令

dissolve2 -o result.json 

8、得到你想要的结果,下图为应用效果

demo附件

链接:https://pan.baidu.com/s/1CoCxMAycMpYR-b6iqA4Ekw 
提取码:nuty

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐