2015-10-12 3 views
1

Имея highchart, в котором есть несколько строк, как я могу получить индекс данных массива, из которого была получена точка.Можем ли мы получить индекс из данных серии в highcharts

this.series.data.indexOf(this.point) 

Он дает правильный указатель точки от линии. Но мне нужен индекс массива, из которого были загружены данные серии.

+0

Значит, вам нужно иметь индекс точки в определенном сериале или найти точку во всех сериях? –

+0

Необходимо найти точку из всех серий –

+0

Так что используйте петлю над каждой серией и ссылайтесь на данные. Затем проверьте, не указана ли точка indexOf в текущей серии, –

ответ

1

Чтобы получить индекс конкретной серии вы просто использовать

this.series.index 

с 0 является первой серии.

1

Существует ошибка в селекторе yourChart.series.index:

Он работает нормально при добавлении новой серии с yourChart.addSeries({..}) и обновляет индексы. Но после удаления некоторых серий с yourChart.series[series.index].remove() он не обновляет индексы, пока вы не добавите еще одну серию.

Хотя, если вам нужно удалить пару серий по одному, вы должны выбрать определенную серию, используя просто yourChart.series массив:

for (i in yourChart.series) { 
    // your search condition, for example by name 
    if (searchByName === chart.series[i].name) { 
    chart.series[i].remove(); 
    } 
} 

где i реально индекс, не series.index!

Несмотря на то, что вы не можете выбрать индекс corect по свойству chart.series.index, доступ к которому вы можете получить по адресу yourChart.series.options.index, вы не можете выбрать серию, используя его.

Смежные вопросы