例如:
横轴数据为['周一','周二','周三','周四','周五','周六','周日'],
series数据为[['周一', 1],['周二', 2],['周三',3],['周五',4],['周六',5],['周日',6]]
echarts的option需添加如下设置:
tooltip : {
trigger: 'axis',
triggerOn: 'none',
formatter: function (params) {
// 自定义
}
}
获取echarts实例后(chart为echarts实例)
chart.getZr().on('mousemove', function (params) {
var pointInPixel= [params.offsetX, params.offsetY];
if (chart.containPixel('grid',pointInPixel)) {
var pointInGrid = chart.convertFromPixel({seriesIndex:0},pointInPixel);
//X轴序号
var xIndex = pointInGrid[0];
//获取当前图表的option
var op = chart.getOption();
//获得图表中我们想要的数据
var xAxis = op.xAxis[0].data[xIndex];
var xArr = [];
op.series[0].data.forEach(function(item) {
xArr.push(item[0]);
});
if (xArr.indexOf(xAxis) != -1) {
chart.dispatchAction({
type: 'showTip',
// 屏幕上的 x 坐标
x: pointInPixel[0],
// 屏幕上的 y 坐标
y: pointInPixel[1]
})
} else {
chart.dispatchAction({
type: 'hideTip'
})
}
}
});