echarts 饼图hover效果,饼图中间显示自定义信息

本文介绍如何使用Echarts配置饼图,实现hover时在图表中心显示自定义信息的效果,通过调整tooltip的position百分比来控制信息位置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >



option = {
   
tooltip: {
    show:true,
    trigger: 'item',
    position: ['35%', '32%'],
    backgroundColor: 'implements',
    textStyle:{
        color: '#000000',
        fontStyle: 'normal',
        fontWeight: 'normal',
        fontFamily: 'sans-serif',
        fontSize: 14,
    },
    formatter: function(params){
        return formatter(params);
    }
},

    legend: {
        orient: 'vertical',
        x: 'left',
        data:['直接访问','邮件营销','联盟广告','视频广告','搜索引擎']
    },
    series: [
        {
            name:'访问来源',
            type:'pie',
            radius: ['50%', '70%'],
            avoidLabelOverlap: false,
            label: {
                normal: {
                    show: false,
                    position: 'center'
                },
                emphasis: {
                    show: true,
                    textStyle: {
                        fontSize: '30',
                        fontWeight: 'bold'
                    }
                }
            },
            labelLine: {
                normal: {
                    show: false
                }
            },
            data:[
                {value:335, name:'直接访问'},
                {value:310, name:'邮件营销'},
                {value:234, name:'联盟广告'},
                {value:135, name:'视频广告'},
                {value:1548, name:'搜索引擎'}
            ]
        }
    ]

};


   //饼图中心字体样式
function formatter(params){
       var div = $('<div>');
       var spanPublic = $('<span style="font-size: 12px; color: #AFB0AF;">');
       var span = $('<span style="font-size: 14px;">').text('');
       var spanTop = spanPublic.clone().text(params.name);
       var spanBottom = span.clone().text(params.value).append(spanPublic.clone().text('间夜'));
       var spanRate = spanPublic.clone().text(params.percent+'%');
       var br = $('</br>');
   var all = div.append(spanTop).append(br.clone()).append(spanBottom).append(br.clone()).append(spanRate);
       return all[0].innerHTML;
}

如果需要修改中心的位置,只需要修改tooltip中 position的百分比即可



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值