echarts搞定各种地图(想怎么画就怎么画)

作者: 前端很忙 | 来源:发表于2018-09-20 16:56 被阅读15次
西城区各街道效果图

echarts提供了全国各省市及区县的js和json文件,但是并没有细化到区域内各街道范围,有时候项目中又有这种需求,领导给予重任,我们又不能轻易拒绝,只能是硬着头皮上了。

今天我们以北京市西城区各街道地图为例,教大家如何应对各种变态echarts地图类需求。


前段时间接到任务,需求是将北京市西城区各街道,用echarts地图形式展现出来。我们应该知道使用echarts实现北京市地图展示还是比较简单的效果,只需要引入对应的beijing.js或者北京市的beijing.json数据,根据官方文档配置就可以轻松实现。

但是源码中并没有细分到城区中各街道的范围,所以就不能在使用echarts提供的文件了。

在官方文档API中,echarts 有一个registerMap(mapName,geoJson,specialAreas)方法,此方法有3个参数:

  • mapName:地图名称,这里的名称要与地图配置中 option--series--mapType 的值保持一致。
  • geoJson:geoJson 格式的数据,具体格式见 http://geojson.org/
  • specialAreas:可选参数,细节配置,具体参考文档。

现在我们欠缺的就只是 geoJson 文件了。下面我们需要用到北京市的 geoJson 文件,可以到我的个人 github 上自取 https://github.com/zhangqian00/echarts3-mapFile

我们通过北京市的 json 文件可以得到西城区的 geoJson 如下:

复制西城区geoJson

然后我们打开http://geojson.io,这是一个可以在线绘制 geoJson 的网站,就是因为它我们才能随心所欲的绘制我们想要的地图样式和 geoJson 数据。将前面得到的西城区 geoJson 数据粘贴上去:

下面你就可以自由发挥了,因为复制过来的是一整块的数据,你要将图形按各区范围分为对应的块,修改左边的图形,右边的 geoJson 数据会自动更新。当然,你也可以完全从零开始,绘制你自己的地图,这样自由度更大。

其实,如果你也可以忽略掉后边的地图,地图只是给你一个参照。你完全可以把它当做一个画图工具,最后用到的是右侧的 geoJson 数据,通过 echarts.registerMap() 方法生成 echarts 地图,搞定!!

获取xicheng.json初始化地图
案例源代码已上传 https://github.com/zhangqian00/

公众号:前端很忙

做一个喜欢分享的前端开发者!

获取更多干货分享,欢迎来搞!

相关文章

  • echarts搞定各种地图(想怎么画就怎么画)

    echarts提供了全国各省市及区县的js和json文件,但是并没有细化到区域内各街道范围,有时候项目中又有这种需...

  • 想怎么画就怎么画

    那种看见什么就画什么的感觉真好 不用像临摹那样,提心吊胆 怕这不好,那不像 自己画自己眼里看到的,不用在乎好不好看...

  • 想怎么画,就怎么画

    三个小姑娘,开始和妈妈一起上国学课啦…… 妈妈在旁边陪着女儿读经,画画,孩子没坐好,妈妈提醒,孩子没指...

  • 画画打卡第四天

    初定的时间目标是30天,成绩目标不确定。想画啥就画啥,想怎么画就怎么画……

  • 胡涂乱画

    完全没有章法,想怎么画就怎么画,跟着感觉走

  • 国画与彩铅的结合……@小丫

    我的画界里没有常规!想怎么画就怎么画

  • vue使用echarts画省份地图

    vue中使用echarts画省份地图 1.安装echarts 2.引入echarts 示例

  • 水彩涂个鸦

    水彩对线稿要求不高,想怎么画就怎么画,就是这么随意。

  • 天禅🌸🌸映画🦅🦅🌸🌸

    想怎么画就怎么画,想画啥就画啥,画的是啥不知道不评判。画的过程觉知自己起心动念 金色银色和黑色的无缝连接,给我无限...

  • 天禅🌸🌸映画🦅🦅🌸🌸

    想怎么画就怎么画,想画啥就画啥,画的是啥不知道不评判。画的过程觉知自己起心动念……自然流淌 金色银色和黑色的无缝连...

网友评论

本文标题:echarts搞定各种地图(想怎么画就怎么画)

本文链接:https://www.haomeiwen.com/subject/hpepnftx.html