当前位置: 代码网 > it编程>编程语言>Javascript > echarts自定义tooltip中的内容代码示例

echarts自定义tooltip中的内容代码示例

2024年11月03日 Javascript 我要评论
原本的默认样式长这样:也就是有几个图例,就显示几个再加上数字。默认代码是这样的:tooltip: { trigger: 'axis', axispointer: {

原本的默认样式长这样:

也就是有几个图例,就显示几个再加上数字。

默认代码是这样的:

tooltip: {
    trigger: 'axis',
    axispointer: {            // 坐标轴指示器,坐标轴触发有效
        type: 'cross',        // 默认为直线,可选为:'line' | 'shadow' 'cross'
                        
    },
    confine:true, // 限制tooltip在图标区域内显示                
},

但我需要的是这样的:

代码如下:

需要加一个formatter函数

tooltip: {
    trigger: 'axis',
    axispointer: {            // 坐标轴指示器,坐标轴触发有效
        type: 'cross',        // 默认为直线,可选为:'line' | 'shadow' 'cross'
    },
    
    confine:true,             //限制tooltip在图表区域内显示
    formatter:function(params) {
        console.log(params);
        let content = '<div style="text-align: left;width:250px;margin-left:20px">'; // 创建一个中心对齐的容器
        content += '<table style="border-bottom:1px solid #cococo">';
    
        content += '<tr><td>${params[0].name?.split(' ')[1][1]}</td></p>'; // 显示时间戳
        content += '<td style="text-indent:5px">平均</td>';
        content += '<td style="text-indent:5px">峰值</td>';
        content += '<td style="text-indent:5px">最高</td></tr>';

        for (let i = 0; i < params.length; i++) {
            const param = params[i];
        const seriesname = param.seriesname; // 获取系列名称
        const value = param.data; // 获取数据值
        const color = param.color; // 获取颜色
        
        content += '<tr><td style="text-indent:5px;border-left:2px solid ${color}">${seriesname}</td>';
        content += '<td style="text-indent:5px">${value.tofixed(2)}</td>'; // 格式化为百分比
        if (seriesname === "cpu占用率") {
            content += '<td style="text-indent:5px">${datarow.cpu_total_grad_list[param.dataindex]}</td>'; // 格式化为百分比
            content += '<td style="text-indent:5px">${datarow.cpu_total_max_list[param.dataindex]}</td></tr>';
        } else if (seriesname === "sys占用率") {
            content += '<td style="text-indent:5px">${datarow.cpu_sys_grad_list[param.dataindex]}</td>';
            content += '<td style="text-indent:5px">${datarow.cpu_sys_max_list[param.dataindex]}</td></tr>';
        } else if (seriesname === "用户占用率") {
            content += '<td style="text-indent:5px">${datarow.cpu_user_grad_list[param.dataindex]}</td>';
            content += '<td style="text-indent:5px">${datarow.cpu_user_max_list[param.dataindex]}</td></tr>';
        } 
    }

    content += '</table>';
    
    content += '<tr><td>最大值所在主机 ${datarow.cpu_max_host[params[0]?.dataindex]}</td></tr>';
   
    return content;
}
}

总结 

到此这篇关于echarts自定义tooltip中内容的文章就介绍到这了,更多相关echarts自定义tooltip内容内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2026  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com