利用 Echarts 添加地图标记
为了将写好的游记更好的可视化,可以利用百度开源的可视化图表库 Echarts 来将游记添加为地图上的标点。
Echarts 的优势在于其基于 JavaScript,可以在静态网站上顺畅的访问。
准备
我预计将代码添加到 tags/游记
中,为此可以在 archive.pug
中添加如下的代码。
1 | if page.tag == '游记' |
同时需要在 head.pug
中添加对相关 js 文件的引用。
1 | if page.tag == '游记' |
接下来只需要在 _partial/map.pug
中实现代码即可。
地图
首先创建地图的组件
1 | #myMap(style='width: 100%;height:500px;') |
接下来需要导入地图的数据,并注册地图组件。
1 | script. |
注意到需要预先将 world.json
下载到对应的文件夹中,下载地址。
将需要在地图上显示的地点存入列表中, 并实现转化数据的函数,参考全国主要城市空气质量地图的示例。
1 | var data = [ |
再参考文档进行一些外观上的配置即可。
1 | option = { |
注意:
- 只有 type 为 graph 时才可以正常使用重叠标签的显示和隐蔽。
- 调试时若修改参数后看似没有效果,需要
hexo clean && hexo g
之后重新启动hexo s
补充
可以将几个不同区域的JSON拼接到一起,比如将中国的各省份数据和世界地图的数据放到一起,就可以实现中国的精细到省份,而世界地图精细到国界。当然因为本质上是描点酸楚的,所以国界处会有一定的空隙。
实用网站
Chat: [email protected]