识别用户单击的所有重叠的Highcharts散点图

时间:2017-07-14 17:28:24

标签: highcharts highstock scatter

我有一个带有重叠点的散布系列的高价图表。 X值相同但Y值略有变化。由于变化很小,重叠并不精确,但用户仍难以区分。

单击/点击散点时,我想识别鼠标指针/手指触摸的所有数据点。但是,似乎Highcharts只会为堆栈顶部的点引发单击事件。有几个在线建议迭代所有数据点并找到具有匹配Y值的数据,但在我的情况下,我需要应用一些模糊逻辑并尝试选择看起来像用户重叠的点,基于标记的大小和图表的高度,这似乎是一个错误的方向。

我可以使用Highcharts中的任何内容查找用户与之互动的所有点吗?

JS小提琴:http://jsfiddle.net/f22tq4t2/1/

Highcharts.stockChart('container', {
    series: [{
        type: 'scatter',
        name: 'Demo scatter overlap',
        data: [{x: 1500052112000, y: 5}, {x: 1500052112000, y: 5.1}, {x: 1500052118000, y: 15.1}, {x: 1500052118000, y: 15.2}]
    }],
    xAxis: {
        min: 1500052109000,
        max: 1500052119000,
        type: "datetime"
    },
    plotOptions: {
        series: {
            point: {
                events: {
                    click: (event) => {
                        alert('clicked ' + event.point.y);
                    }
                }
            }
        }
    }
});

0 个答案:

没有答案