将其他数据添加到Highcharts系列以用于格式化程序

时间:2012-01-06 01:02:51

标签: highcharts

我的问题与此问题中的OP完全相同:

Set Additional Data to highcharts series

但是接受的答案解释了如何将附加数据添加到,而不是系列,而不说是否可以使用该系列。

我希望能够定义一个类似的系列:

series: [
    {"hasCustomFlag": true, "name": "s1", "data": [...]},
    {"hasCustomFlag": false, "name": "s2", "data": [...]},
]

并且能够在格式化函数中使用point.series.hasCustomFlag。这可能吗?

我不想将数据放在点级别上,因为这意味着我必须复制数据太多次了。

2 个答案:

答案 0 :(得分:44)

是的,这是可能的,额外的配置属性位于options属性下(this.series是指系列实例,而不是配置对象)。请参阅参考here并向下滚动到属性部分。

因此,请在格式化程序中使用此行:

if (this.series.options.hasCustomFlag) { ... }

jsfiddle

上的完整示例

答案 1 :(得分:3)

这似乎已经在以后的HighCharts / HighStocks迭代中进行了修订。 jsfiddle示例不再有效。使用" this.series.options.hasCustomFlag"语法结果为" undefined"。调试器显示我正在寻找的数据在" this.series.userOptions.data" - 一个未排序的非常大的数组,但整个系列都在那里 - 不是你通常用this.x或this.y获得的特定记录数据。