Highcharts для производительности изменяет исходный массив данных, поэтому значения данных в переменной data1
такие же, как в переменной series
после первого обновления. В качестве решения вам необходимо создать новый массив с данными, например, вернув его из функции.
function getData1() {
return [...]
}
function getSeries() {
return [...]
}
$('#container').highcharts({
series: getData1()
});
// For New Data
$('#new').click(function() {
...
chart.update({
series: getSeries()
});
});
//Back to same series
$('#previous').click(function() {
...
chart.update({
series: getData1()
});
});
Живая демонстрация: http://jsfiddle.net/BlackLabel/qk3rLa5v/