一尘不染

将附加数据设置为highcharts系列

javascript

有什么方法可以将一些其他数据传递到将用于显示在图表“工具提示”中的系列对象?

例如

 tooltip: {
     formatter: function() {
               return '<b>'+ this.series.name +'</b><br/>'+
           Highcharts.dateFormat('%b %e', this.x) +': '+ this.y;
     }

在这里,我们只能对系列使用series.name,this.x和this.y。可以说我需要随数据集一起传递另一个动态值,并且可以通过系列对象进行访问。这可能吗?

谢谢大家。


阅读 355

收藏
2020-04-25

共1个答案

一尘不染

是的,如果您按照如下所示设置系列对象,每个数据点都是一个哈希,则可以传递额外的值:

new Highcharts.Chart( {
    ...,
    series: [ {
        name: 'Foo',
        data: [
            {
                y : 3,
                myData : 'firstPoint'
            },
            {
                y : 7,
                myData : 'secondPoint'
            },
            {
                y : 1,
                myData : 'thirdPoint'
            }
        ]
    } ]
} );

在工具提示中,您可以通过传入的对象的“ point”属性来访问它:

tooltip: {
    formatter: function() {
        return 'Extra data: <b>' + this.point.myData + '</b>';
    }
}
2020-04-25