6

使用 Highcharts,如何使用它的 id 选择一个点?例如,如果我使用以下代码创建图表:

 chart1 = new Highcharts.Chart({
         chart: {
            renderTo: 'container',
            type: 'scatter'
         },
         title: {
            text: 'Fruit Consumption'
         },
         xAxis: {
            categories: ['Apples', 'Bananas', 'Oranges']
         },
         yAxis: {
            title: {
               text: 'Fruit eaten'
            }
         },
         series: [{
            name: 'Jane',
            data: [{
                name: 'Point1',
                x: 1,
                y: 2
            }, {
                name: 'Point2',
                x: 2,
                y: 5
            }]
         }, {
            name: 'John',
            data: [5, 7, 3]
         }]
      });
   });

工具提示告诉我,当我将鼠标悬停在一个点上时,id 是什么。但是,我无法弄清楚识别这一点的语法。我知道chart1.series[0].name返回Jane. Also, chart1.series[0].data[0].name returnspoint1`有没有一种简单的方法可以让我只知道'point1'来选择点并改变颜色?

我想知道除了每次循环遍历所有点之外是否还有更有效的方法。

4

1 回答 1

12

您可以id为想要获得的每个点设置一个。

series: [{
    name: 'Jane',
    data: [{
        'name': 'Point1',
        'id': 'point1',
        'x': 1,
        'y': 2
    }, {
        'name': 'Point2',
        'id': 'point2',
        'x': 2,
        'y': 5
    }]
}, {
    name: 'John',
    data: [5, 7, 3]
}]

那么就可以通过下面的代码来理解了。

// assuming that chart is your chart var
chart.get('point1');

演示

或者,如果您不想设置一个,id您可以通过简单的循环points来比较name您想要找到的point name.

参考

于 2012-10-03T23:20:22.407 回答