在 Hexo 博客中插入 ECharts 动态图表
Apache ECharts一个基于 JavaScript 的开源可视化图表库
npm install hexo-tag-echarts --save |
- 注意:ECharts官网教程-[5 分钟上手 ECharts]([https://echarts.apache.org/zh/tutorial.html#5 分钟上手 ECharts](https://echarts.apache.org/zh/tutorial.html#5 分钟上手 ECharts))里的
npm install echarts --save
并不适合hexo博客,这种安装方式无效,请安装hexo-tag-echarts
插件。 - 添加如下js文件
// 通过jsDelivr的CDN引入echarts |
在markdown文件下添加echarts,格式如下:
<script>
...
</script>
{% echarts 400 '85%' %}
...
{% endecharts %}<script>
中添加定义的变量和函数,若无设定则可删掉<script></script>
{% echarts 400 '85%' %}`和`{% endecharts %}
之间添加echarts的option
。- 参数400指定图表展示的高度为400px,85%则指定图表展示的宽度为85%,如不写明这两项参数则默认值为高度400px,宽度81%。
- title:标题组件,包含主标题和副标题。
- legend:图例组件。
- tooltip:提示框组件。
- toolbox:工具栏。内置有导出图片,数据视图,动态类型切换,数据区域缩放,重置五个工具。
- xAxis、yAxis:直角坐标系 grid 中的 x 轴、y轴。
- series:系列列表。每个系列通过
type
决定自己的图表类型。- series-line:折线/面积图
- series-bar:柱状/条形图
- series-pie:饼图
- series-scatter:散点图
- series-radar:雷达图
- series-tree:树图
- series-boxplot:箱形图
- series-candlestick:K线图
- series-heatmap:热力图
- series-graph:关系图
多个图表的数据和函数可能会冲突,请注意!
直接在html中直接绘制,然后用
<iframe></iframe>
展示效果更佳。关于hexo的html文件渲染问题,可以参考Fluid+自定义html,主要是去掉head
部分的说明。在html绘图ECharts的格式如下:
`
<script src="https://cdn.jsdelivr.net/npm/echarts@5.3.3/dist/echarts.min.js"></script> |
- 部分echart需要引入其他js,如
bmap
、jquery
等,请自行添加。 - 使用百度地图的api需要申请密钥(ak),使用格式如下,注意替换
FAKE_AK
。
<script type="text/javascript" src="https://api.map.baidu.com/api?v=2.0&ak=FAKE_AK"></script> |
3.实例
下面给出一些echarts官方实例,大多数都可以交互。