echarts 实现自定义tooltip提示框浮层内容显示

问题场景

项目开发中折线图tooltip需要显示数据单位, 不能在option中直接配置只能通过tooltip.formatter函数来实现自定义内容的实现。实现过程也十分简单,废话不多说直接上代码。

option = {
    tooltip: {
        trigger: 'axis',
        padding: [10, 16],
        formatter(params){
            let str =   `<div style='display: flex;justify-content: space-between;margin-bottom: 12px'>
                            <span>${params[0].axisValue}</span>
                            <span>(个)</span>
                        </div>`;
            for(let i=0; i<params.length; i++){
                let series = params[i];
                str += `<p style="display: flex;justify-content: space-between;align-items: center;">
                            <span style="margin-right: 20px">
                                <span style=\"display:inline-block;margin-right:4px;border-radius:6px;width:6px;height:6px;background-color: ${series.color};"\></span>
                                <span >${series.seriesName}</span>
                            </span>
                            <span>${series.value}</span>
                        </p>`;
            }
            return str;
        }
    },
    xAxis: {
        type: 'category',
        data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
    },
    yAxis: {
        type: 'value'
    },
    axisPointer: {
        lineStyle: {
            type: 'solid'
        }
    },
    series: [
        {
            name: '请求数量',
            data: [150, 230, 224, 218, 135, 147, 260],
            type: 'line'
        },
        {
            name: '访问',
            data: [100, 200, 250, 300, 135, 100, 60],
            type: 'line'
        },
    ]
};

关键函数formatter

  1. 字符串模板提示框浮层内容格式器,支持字符串模板和回调函数两种形式。模板变量有 {a}, {b},{c},{d},{e},分别表示系列名,数据名,数据值等。表现形式:formatter: ‘{a}: {b}<br />{c}: {d}’>。
  2. 回调函数形式(params: Object|Array, ticket: string, callback: (ticket: string, html: string)) => string | HTMLElement | HTMLElement[]
    params参数打印结果如下
    在这里插入图片描述

配置效果图

在这里插入图片描述
配置效果如上图所示, 将echats示例option替换为本文option配置即可看到展示效果。最后附上官网tooltip配置链接

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值