echarts图表(三),轴label添加hover高亮及图标

如果,想要做y轴label hover后后面出现图表,文字高亮,主要使用的是yAxis.axisLabel.formatter, yAxis.axisLabel.formatter, 配合echarts实例的mouseover mouseout事件,通过设置hover类目的索引,来给对应类目设置激活状态,上代码:
eChartInstance.current.on('mouseover', function (params) { if (params.componentType === 'yAxis') { let index = params.dataIndex xLabelHover(index) } }) eChartInstance.current.on('mouseout', function (params) { if (params.componentType === 'yAxis') { xLabelHover(null) } }) yAxis: { axisLabel: { formatter: function(value, index) { if (index === axisHoverIndex) { return [ `{c|${value}}`, `{b|}` ].join(' ') } else { return `{a|${value}} ` } }, rich: { a: { padding: [4, 16, 0, 0,], verticalAlign: 'bottom' }, b: { backgroundColor: { image: clickableImg }, height: 16, width: 16 }, c: { color: '#6395FA', verticalAlign: 'bottom' }, } } }
需要注意的几点:
1.echarts实例注册mouseover事件后,要注册mouseout事件来控制鼠标离开label取现激活状态,
2.索引axisHoverIndex我是使用useState来控制的,事件触发后设置index值,index一定要触发echart setOption动作。也就是说如果setOption封装了函数,要在依赖数组里面加index
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY