echarts在Vue3中的使用
基本使用
安装
1 | npm install echarts --save |
使用
1 | <div class="char-item" ref="pieChartDom"></div> |
1 | const pieChartDom = ref(null) |
常用配置
图例组件(legend
)
提示框组件(tooltip
)
格式化数据
formatter
- 字符串模板,官网示例
模板变量有 {a}
, {b}
,{c}
,{d}
,{e}
,分别表示系列名,数据名,数据值等。 在 trigger 为 'axis'
的时候,会有多个系列的数据,此时可以通过 {a0}
, {a1}
, {a2}
这种后面加索引的方式表示系列的索引。 不同图表类型下的 {a}
,{b}
,{c}
,{d}
含义不一样。 其中变量{a}
, {b}
, {c}
, {d}
在不同图表类型下代表数据含义为:
- 折线(区域)图、柱状(条形)图、K线图 :
{a}
(系列名称),{b}
(类目值),{c}
(数值),{d}
(无) - 散点图(气泡)图 :
{a}
(系列名称),{b}
(数据名称),{c}
(数值数组),{d}
(无) - 地图 :
{a}
(系列名称),{b}
(区域名称),{c}
(合并数值),{d}
(无) - 饼图、仪表盘、漏斗图:
{a}
(系列名称),{b}
(数据项名称),{c}
(数值),{d}
(百分比)
对于有多个系列的且动态变换的系列时,则需要采用回调函数形式,自动生成各个系列的模板
示例:
1 | tooltip: { |
- 回调函数
1 | tooltip: { |
回调函数格式:
1 | (params: Object|Array, ticket: string, callback: (ticket: string, html: string)) => string | HTMLElement | HTMLElement[] |
支持返回 HTML 字符串或者创建的 DOM 实例。
第一个参数 params
是 formatter 需要的数据集。格式如下:
1 | { |
valueFormatter
从
v5.3.0
开始支持
堆叠效果图也适用
1 | tooltip: { |
常见问题
- 异步加载数据时,出现上次加载数据依旧停留在图表
1 | 解决办法:应该设置mychart.setoption({},true); |
- vue3+echarts绘制折线图鼠标悬浮时不显示tooltips问题
1 | 1. 检查 legend data=[]值是不是和series 里的每个name值一 一 对应,不一样,改成一样 |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 小橙子博客!