Echarts 柱状图 series新增tooltip

产品虐我千百遍

官网的案例确实是实现了这个效果,实际用到项目是失效


 要实现的效果大概是这样

 

// 官网代码 
series: [
    {
      name: 'Evaporation',
      type: 'bar',
      tooltip: {
        valueFormatter: function (value) {
          return value + ' ml';
        }
      },
      data: [
        2.0, 4.9, 7.0, 23.2, 25.6, 76.7, 135.6, 162.2, 32.6, 20.0, 6.4, 3.3
      ]
    },
    {
      name: 'Precipitation',
      type: 'bar',
      tooltip: {
        valueFormatter: function (value) {
          return value + ' ml';
        }
      },
      data: [
        2.6, 5.9, 9.0, 26.4, 28.7, 70.7, 175.6, 182.2, 48.7, 18.8, 6.0, 2.3
      ]
    },

在series里设置tooltip, 好像是会失效的,因为全局的tooltip优先级最高,会覆盖局部的设置。虽然官网是这么写的。下面贴出解决方案:

// 解决方案
let option = {
  tooltip: {
    trigger: 'axis',
    axisPointer: {
      type: 'cross',
      crossStyle: {
        color: '#999'
      }
    },
    formatter(params) {
      let str = params[0].name + '<br />'
      params.forEach(item => {
        if (item.seriesName === '风电项目' || item.seriesName === '光伏项目') {
             str += `${item.marker}${item.seriesName}: ${item.data}万千瓦<br />`
         } else {
            str += `${item.marker}${item.seriesName}: ${item.data}个<br />`
         }
      })
    }
  },
  legend: {
    data: ['风电项目', '光伏项目', '风电项目数量', '光伏项目数量']
  },
}

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值