Highcharts 在小组中计算分数-高分图表

Highcharts 在小组中计算分数-高分图表,highcharts,Highcharts,让我先解释一下我提供的小提琴。 在图表的最右边,有四个泡泡聚集在一起。因此,当我将鼠标移到该组中的任何一个气泡上时,我应该得到始终为4的计数。因为该组包含四个气泡。然而,在小提琴中,当它悬停在不同的泡泡上时,它将显示不同的计数 简言之,例如,如果有8个气泡链接/聚集在一起,则当将鼠标悬停在8个气泡组中的任何一个气泡上时,其计数应显示为8。我需要的是组数,而不是与悬停气泡相交的气泡数。我想这可以通过递归实现。但我被这件事缠住了。任何及时的帮助都将不胜感激 series: [{ too

让我先解释一下我提供的小提琴。

在图表的最右边,有四个泡泡聚集在一起。因此,当我将鼠标移到该组中的任何一个气泡上时,我应该得到始终为4的计数。因为该组包含四个气泡。然而,在小提琴中,当它悬停在不同的泡泡上时,它将显示不同的计数

简言之,例如,如果有8个气泡链接/聚集在一起,则当将鼠标悬停在8个气泡组中的任何一个气泡上时,其计数应显示为8。我需要的是组数,而不是与悬停气泡相交的气泡数。我想这可以通过递归实现。但我被这件事缠住了。任何及时的帮助都将不胜感激

series: [{
      tooltip: {
        pointFormatter: function () {
    var _this = this;
    var overlapCount = this.series.data.reduce(function (sum, point) {
        return sum + (point !== _this && areOverlapping(_this, point));
    }, 0) + 1;
    return 'Overlapping bubbles: ' + overlapCount;
}
      }

正如您所说,您的脚本需要一些递归

你离期望的结果不远。我的逻辑遵循及物性关系:

想象一下
A
B
C
都是图表气泡。如果
A
B
重叠
C
A
不与
C
重叠),则重叠气泡的总量为3

因此
A
并不“知道”
C
,但两者是重叠的
B

如果您对逻辑或代码有任何疑问,请随时提问。我在代码中添加了一些注释来解释我所做的事情


最后,.

据我所知,您需要计算所有链接在一起的
气泡。我创建了递归代码,它收集链接在一个组中的所有气泡,并以数组的形式返回它们。看看我在下面发布的示例

示例:

嘿,非常感谢你的努力。请看更新后的fiddle:哦,对了,问题是我的示例只取重叠兄弟数较多的元素,并将其设置为同一组的其他气泡。