跳转到内容

图表菜单项自定义

刀刀
0字
0分钟
2026/8/16

Echart 图表菜单项自定义效果

效果:

效果

  1. 图例设置为圆圈形状
  2. 文字内容自定义

Echart 图表菜单项自定义实现

对于图表菜单的修改,需要在 legend 对象修改。

实现图例圆圈效果,只需要在 legend 对象内设置 icon 属性为 circle 即可。

实现文字内容自定义的效果,需要在 legend 对象内设置 formatter ,该属性有两种方式:可以直接返回一个携带变量的字符串;可以是一个返回内容的函数。

代码:

js
option = {
  tooltip: {
    trigger: 'item',
  },
  legend: {
    orient: 'vertical',
    left: 'right',
    top: 'center',
    align: 'left',
    icon: 'circle',
    formatter(name) {
      return `name${name}`
    },
  },
}

对内容自定义设置样式,也需要使用到 rich 富文本属性,在 formatter 函数的返回值中设置 {变量名|变量} 的格式,然后在 legend 对象内设置 textStyle 对象用于设置图例文字样式,再设置 rich 属性对每一个变量的文字设置样式。

代码:

js
option = {
  tooltip: {
    trigger: 'item',
  },
  legend: {
    orient: 'vertical',
    left: 'right',
    top: 'center',
    align: 'left',
    icon: 'circle',
    textStyle: {
      color: '#fff',
      rich: {
        name: {
          fontSize: 12,
          fontFamily: 'PingFang SC',
          color: '#ccc',
          letterSpacing: 1,
          fontWeight: 700,
        },
        num: {
          fontSize: 12,
          fontFamily: 'PingFang SC',
          color: '#ccc',
          letterSpacing: 1,
          fontWeight: 700,
        },
        point: {
          fontSize: 12,
          fontFamily: 'PingFang SC',
          color: '#ccc',
          letterSpacing: 1,
          fontWeight: 700,
        },
      },
    },
    formatter(name) {
      const item = data.value.find((item) => item.name === name)
      return `{name|${name}}{num|${item.value}次}    {point|占比${item.point}%}`
    },
  },
}

Echart 图表菜单项自定义总结

legend 中设置 formatterrich 实现内容自定义。

贡献者

The avatar of contributor named as duyidao duyidao
The avatar of contributor named as v_duyilin v_duyilin
The avatar of contributor named as 平安喜乐 平安喜乐
The avatar of contributor named as 刀刀 刀刀

页面历史

刀刀博客累计访客 人;文档累计访问量共