2017-08-25 86 views
1

我有一個列表與多個系列和共享工具提示。 positioner(labelWidth, labelHeight, point)回調函數中的點對象只包含懸停類別中的最左邊的點。我希望將該工具提示定位在該類別內的最高欄之上。如果最左邊的小節比其他任何小節都小,那麼工具提示覆蓋這些較高的小節。Highcharts自定義工具提示定位器

是否有任何方法獲得所有點在徘徊類而不是隻有最左邊的一個?

回答

1

您可以遍歷hoverPoints並找到您需要的一個。

positioner: function(w, h) { 
    var chart = this.chart, 
    hoverPoints = chart.hoverPoints, 
    len = hoverPoints.length, 
    topPoint = hoverPoints[0], 
    x, 
    y; 

    for (var i = 0; i < len; i++) { 
    if (hoverPoints[i].y > topPoint.y) { 
     topPoint = hoverPoints[i]; 
    } 
    } 

    x = topPoint.barX + chart.plotLeft + topPoint.pointWidth/2 - w/2; 
    y = topPoint.plotY + chart.plotTop - h; 

    return { 
    x: x, 
    y: y 
    }; 
}, 

演示:http://jsfiddle.net/5f7558ro/1/