echarts雷达图鼠标悬浮显示单轴数据

雷达图效果展示

雷达图默认只能展示一圈的数据,而不能展示一个轴向的数据,具体图片效果如下
在这里插入图片描述

问题描述

在雷达图的tooltip中的 formatter: function (params){}打印出params参数的数据只有每一圈的数据,params的数据并不能区分鼠标放在了哪一个单轴的科目里面。所以没法区分鼠标停在哪一个科目。

问题解决

打开echars源码文件找到,_showTooltipContent方法在this._ticket = e,c = h(n, a,o, e, d)这段代码里面加上a,o两个参数,将鼠标的坐标进行传入。
在这里插入图片描述
在代码中,增加x,y入参数,
在这里插入图片描述
可实现鼠标坐标的打印。
在这里插入图片描述
有了坐标信息就很好解决位置悬停在哪一个轴向的问题,对于具体判断是哪一个轴向的问题,可以利用角度计算,位置判断一系列的方法来解决。我是采用简单的判断来实现的。具体代码如下:

tooltip: {
                            textStyle:{
                                align:'left' // 左对齐
                            },

                        formatter: function (params,x,y) {
                            console.log(params,"悬停事件触发!");
                            console.log(x,"x触发!");
                            console.log(y,"y触发!");
                            if(x > 270 && x < 279 && y < 252 && y > 70){
                                let score = "";
                                for (item in valueed){
                                    score = score + (valueed[item].name) + ":" + (valueed[item].value[1]) + "<br>";
                                }
                                return  "政治理论<br/>" + score ;
                            }
                        }
                        }
  • 2
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值