在放大Highcharts时获取选定的点索引

时间:2015-03-20 11:42:59

标签: javascript highcharts

我希望能够缩放一个或多个点并获得该点的相关Y值。到目前为止,我已经得到了这个,但没有任何成功:http://jsfiddle.net/animeshb/8rdkb7t4/3/

var pointValue = this.series[0].data[index].y

我无法找到所选点或选定点的索引。我在这里缺少什么?

1 个答案:

答案 0 :(得分:1)

好吧,这可能不是最好的方法,但我通过以下方式让它为单点工作:

var pt = Math.ceil(event.xAxis[0].min)
pointValue = this.series[0].data[pt].y;

http://jsfiddle.net/animeshb/8rdkb7t4/5/

所以,为了捕获多个点,我已经进一步扩展了上述内容:

var minpt = Math.ceil(event.xAxis[0].min);
var maxpt = Math.ceil(event.xAxis[0].max);
var distance = maxpt - minpt;
if (distance == 1) pointValues.push(this.series[0].data[minpt].y);
else {
    for (var i = minpt; i < maxpt; i++) {
        pointValues.push(this.series[0].data[i].y);
    }
}
pointValues.forEach(function (item) {
    console.log(item);
});
return false;

http://jsfiddle.net/animeshb/8rdkb7t4/7/

问题是,即使我将选择器拖到点/标记的上方或下方,我也会得到值。

如果我有解决方案,我会继续探索这个并在此更新。