想要达到这个效果:鼠标移入的时候展示tooptip,难点: 如何做到我在移入其他扇形的时候,弹框线的位置永远在扇片的中间;
补充: 目前tooltip的样式是我自定义的图片;
关于echartsTooptip的问题
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
1条回答 默认 最新
- 吃不了席 2024-08-26 17:18关注
以下回复参考:皆我百晓生、券券喵儿等免费微信小程序作答:
要实现这个效果,你需要在 ECharts 的配置项中设置
tooltip
的trigger
为 'item',并自定义一个回调函数来处理鼠标移入事件。在这个回调函数中,你可以获取到当前触发事件的扇形的数据,然后计算出扇形的中心位置,并将 tooltip 的位置设置为这个中心位置。以下是一个示例代码:
option = { series: [ { type: 'pie', data: [ {value: 46, name: '在线数'}, {value: 2, name: '离线数'} ], radius: ['50%', '70%'], avoidLabelOverlap: false, label: { show: true, position: 'center', formatter: '{d}%', }, labelLine: { show: true, }, } ], tooltip: { trigger: 'item', formatter: function(params) { var data = params.data; var total = data.total; var online = data.online; var offline = data.offline; return '总数占比:' + (total * 100).toFixed(2) + '% <br> 在线数:' + online + ' <br> 离线数:' + offline; }, onMouseEnter: function(params) { var center = calculateCenter(params); // 计算扇形中心位置的函数 params.api.update({ tooltip: { position: center, } }); }, onMouseLeave: function(params) { params.api.update({ tooltip: { position: null, } }); } } }; function calculateCenter(params) { // 计算扇形中心位置的逻辑,这里需要你自己实现 }
注意:
calculateCenter
函数需要你自己实现,根据触发事件的扇形数据计算出扇形的中心位置。解决 无用评论 打赏 举报
悬赏问题
- ¥15 如何在vue.config.js中读取到public文件夹下window.APP_CONFIG.API_BASE_URL的值
- ¥50 浦育平台scratch图形化编程
- ¥20 求这个的原理图 只要原理图
- ¥15 vue2项目中,如何配置环境,可以在打完包之后修改请求的服务器地址
- ¥20 微信的店铺小程序如何修改背景图
- ¥15 UE5.1局部变量对蓝图不可见
- ¥15 一共有五道问题关于整数幂的运算还有房间号码 还有网络密码的解答?(语言-python)
- ¥20 sentry如何捕获上传Android ndk 崩溃
- ¥15 在做logistic回归模型限制性立方条图时候,不能出完整图的困难
- ¥15 G0系列单片机HAL库中景园gc9307液晶驱动芯片无法使用硬件SPI+DMA驱动,如何解决?