echarts 饼图
因为我在饼图渲染数据的时候对一些数据较小的label和labelLine进行了隐藏,进行了数据的二次处理,所以legend鼠标悬浮显示出tooltie是我所需要的而点击事件,会关闭一个块,此时就需要重新去计算数据并重新渲染echarts,需求并没有要求做点击关闭部分块在占比图中,网上大部分资源是说设置selectedMode:false,但是这个一旦设置为false,那么点击事件和鼠标悬浮显示tooltie事件就会都取消,显然不符合,经过查官方文档发现legendselectchanged这个事件可以满足要求,legend默认是将这个option的当前元素selected改为了false,我们只需要将其改为true,就相当于取消了点击事件保留了鼠标悬浮显示tooltie事件(当然也可以在legendselectchanged事件中将取消此元素之后,重新计算数据,渲染echarts,原理是一样的)。
myCharts.on('legendselectchanged', function(params) {
var option = this.getOption();
option.legend[0].selected[params.name] = true;//相当于取消点击事件
this.setOption(option)
})