echarts 折线图 拐点 搭配显示tootip

时间:2021-09-01
本文章向大家介绍echarts 折线图 拐点 搭配显示tootip,主要包括echarts 折线图 拐点 搭配显示tootip使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

接到一需求,echarts折线图,鼠标放到某一条这线上,显示这条折线的信息。

第一时间想到的是tootip,可是直接使用tootip它会根据X轴对应的拐点来显示信息,不符合预期。

上网找了一个思路,给echarts图表监听一个鼠标事件,当鼠标经过线的时候触发事件,获取那条线的信息,然后在tootip判断,显示相应的内容。

this.myChart.on('mouseover', function(params) {
window.selectSeries = params.seriesName;
console.log(123)
console.log(params)
})

this.myChart.on('mouseout', function(params) {
window.selectSeries = '';
console.log(123)
console.log(params)
})

但是echarts折线图有个坑让我踩了,浪费了好长时间。
在echarts中折线图的事件监听,实际上只有接触拐点才触发事件,鼠标触碰折线是不触发事件的。
所以就把需求折中,让鼠标触碰拐点的时候出现提示框。
图表的配置tootip:
tooltip: {
trigger: 'axis',
formatter:function(params){
var res = "";
for (var i =0;i<params.length;i++){

var series = params[i];
if (series.seriesName == window.selectSeries){
let date = series.data.value[0];
let year = (new Date(date)).getFullYear();
let month = (new Date(date)).getMonth() + 1;
let day = (new Date(date)).getDate();
let hour = (new Date(date)).getHours();
let minu = (new Date(date)).getMinutes();

// res = series.axisValue +"<br/>" + series.marker + series.seriesName + ":" +series.data.value[0] +"<br/>";
res = series.axisValue +":" + series.seriesName+'车次' +"<br/>" + series.marker +year+'年'+month+'月'+day+'日'+hour+'时'+minu+'分' +"<br/>";
break;
}
}
return res;
}
},

原文地址:https://www.cnblogs.com/qichengban/p/15215582.html