纯手工生成 乡镇行政区划(街道行政区划) geojson 用于百度echart绘图

0.前提说明介绍

目前网上的地图数据只支持到区/县级。如果想要显示乡镇/街道区划的数据,就只能八仙过海,各想办法了。由于时间紧急,本人只想到一个笨办法,现公布于众。

1.所需工具及网站

  1. bigemap软件(或者其他类似软件),用于导出乡镇区划的shp文件
  2. shp文件转geojson文件工具:转换工具
  3. 合并geojson文件网站:geojson.io

2.操作步骤

下面就以制作北京的西城区的街道数据展示详细的操作流程。

    1.导出乡镇区划的shp文件

         这一步使用bigemap工具,循环导出街道数据。具体操作如下图:

1.导出【西长安街街道】数据到一个固定的目录。

 纯手工生成 乡镇行政区划(街道行政区划) geojson 用于百度echart绘图_第1张图片

2.继续导出接下来的街道数据到同一个目录。

纯手工生成 乡镇行政区划(街道行政区划) geojson 用于百度echart绘图_第2张图片

    2.shp文件转换成geojson文件

    这一步使用shp文件转geojson文件工具,这个工具的Demo网址: https://giscafer.github.io/mapshaper-plus/

    下面开始继续操作:

1.将第一步导出的shp文件,一起导入到工具中。如下图:

纯手工生成 乡镇行政区划(街道行政区划) geojson 用于百度echart绘图_第3张图片

纯手工生成 乡镇行政区划(街道行政区划) geojson 用于百度echart绘图_第4张图片

注意:下一步如果导出出错的话,则选择文件的时候,不要全选择,只选择【.shp】文件。

2.转换成geojson文件

纯手工生成 乡镇行政区划(街道行政区划) geojson 用于百度echart绘图_第5张图片

 到此,会导出一个压缩包【output.zip】。将其解压到一个单独的文件夹内部。

     3.合并geojson文件

这一步使用网址: http://geojson.io。打开网址,导入上一步导出的geojson文件。导入的时候,只能一个一个地选择导入了。

纯手工生成 乡镇行政区划(街道行政区划) geojson 用于百度echart绘图_第6张图片

最终所有的导入后,结果如下图

纯手工生成 乡镇行政区划(街道行政区划) geojson 用于百度echart绘图_第7张图片

接下来就可以导出为一个合并后的geojson文件了:

纯手工生成 乡镇行政区划(街道行政区划) geojson 用于百度echart绘图_第8张图片

 最终导出为一个geojson文件【西城区.geojson】,到此已经完成了50%的工作量了。继续下面的操作。

     4.修改合并后的geojson文件

由于bigemap导出的街道文件有问题,还需要继续加工修改才可以作为echarts可以使用的最终geojson文件。下面的操作比较繁琐,匀速呼吸,仔细操作。

1.添加街道的名称

纯手工生成 乡镇行政区划(街道行政区划) geojson 用于百度echart绘图_第9张图片

由于属性【properties】没有内容,所以我们要把街道的名字添加进去。 添加街道名称的步骤需要用到【bigemap】和导出的各个街道的geojson文件。

纯手工生成 乡镇行政区划(街道行政区划) geojson 用于百度echart绘图_第10张图片

纯手工生成 乡镇行政区划(街道行政区划) geojson 用于百度echart绘图_第11张图片 按照上诉步骤,修改完所有的15个街道的名称。

2.修改内容格式

由于bigemap导出的内容格式问题,我们需要删除一层结构。修改步骤如下。

1.搜索【{"type":"GeometryCollection","geometries":[{】并全部替换为【{】

纯手工生成 乡镇行政区划(街道行政区划) geojson 用于百度echart绘图_第12张图片

2.由于删除了【[{】,需要把配对的也删除掉,所以搜索【]}]}}】并替换为【]}}】

 纯手工生成 乡镇行政区划(街道行政区划) geojson 用于百度echart绘图_第13张图片

至此,所有工作结束,最终的geojson文件也完成了。 

3.优点和局限性

  1. 优点:可以按照这个方法生成国外地图的数据(我就用这个方法生成了一个国外地图数据,国外地图只需要修改第一步就可以了。)
  2. 缺点:乡镇区划的数据是根据bigemap软件中导出的,而我发现bigemap的行政区划数据比较旧。现在很多乡镇已经合并了。
  3. 缺点:由于手工生成比较繁琐和需要仔细耐心,所以,不适合大批量的数据需求。

4.产品展示

上述需求是这个项目中使用的。大家可以预览一下。项目支持多个主题定制和管理后台随时添加删除城市乡镇等。

你可能感兴趣的:(纯手工生成 乡镇行政区划(街道行政区划) geojson 用于百度echart绘图)