Я вижу странное поведение на линейном графике Highcharts. У меня отображается несколько рядов, и мне нужно позволить пользователю изменить то, что называется «Уровень карты» на графике, который представляет собой прямую линию во всех периодах времени. Предполагая, что правильный ряд
chart.series[i]
и что новый уровень, который я хочу установить, хранится в var newMapLevel,
Я изменяю данные этой серии так:
data = chart.series[i].data;
for(j=0; j<data.length; j++){
data[j].y = newMapLevel;
}
chart.series[i].setData(data);
Вызов этой функции дает желаемый эффект, ЕСЛИ БЕЗ нового уровня карты y_value ОДНО больше, чем самое высокое значение y_value всех других серий, в этом случае шкала оси Y взрывается. Другими словами, если шкала y_axis обычно составляет от 0 до 275 000, а наибольшее значение y_val из любой другой серии составляет, скажем, 224 000, установка нового значения уровня карты в 224 001 приводит к тому, что шкала y_axis становится от 0 до 27500M. Да, это 27,5 млрд.
Может ли это быть ошибкой в Highcharts? Или есть лучший способ изменить данные в серии?
Я разместил скрипку: http://jsfiddle.net/earachefl/4FuNE/4/