2016-04-22 3 views
0

У меня есть сплайн-диаграмма с 10 различными кривыми на ней - когда вы заходите на страницу, диаграммы не видны, поскольку у меня есть «visible» = false. Затем пользователь нажимает на какую кривую (-ы), которую они хотят видеть.Только изменения серии, которые видны в Highcharts.js

Я хочу иметь возможность динамически изменять данные с помощью кнопки, а также менять ее обратно в исходное состояние. Тем не менее, я только хочу настроить таргетинг на серию, на которую пользователь нажал и, таким образом, установил «видимый».

// the button action 
$('#button').click(function() { 
    var chart = $('#container').highcharts(); 
    chart.series[0].setData([129.2, 144.0, 176.0, 135.6, 148.5, 216.4, 194.1, 95.6, 54.4], false); 

}); 

$('#addNew').on('click', function(e) { 
    $('#container').highcharts().redraw(); 
}); 

Если это имеет значение, я использую django для реализации этого.

+0

так в основном, если пользователь просматривает одну серию, и он нажимает на кнопку данные для этой серии должны измениться, и это должно быть видно, что правильно? –

ответ

0

Чтобы динамически изменять только видимые серии, вы можете проверить, установлено ли для свойства visible значение true.

$('#updateVisibleSeries').click(function(){ 
    Highcharts.each(chart.series, function(s){ 
    if(s.visible === true) { 
     s.addPoint(42, false); 
    } 
    chart.redraw(); 
    }) 
}); 

Пример: http://jsfiddle.net/5nccnqc9/

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