我想通过单击在动态图表上动态更新我的系列,也可以通过单击其他按钮(#previous)将其恢复为原始方式

问题描述 投票:1回答:1

这是我的小提琴,在新按钮之后单击上一个按钮时,它显示相同的数据 http://jsfiddle.net/n4L8s3m0/2/

$(function () {

$('#container').highcharts({
   series:data1
});

// For New Data

$('#new').click(function() {
  var chart = $('#container').highcharts();

  chart.update({
    series: series
  });
  });

//Back to same series

$('#previous').click(function() {
 var chart = $('#container').highcharts();
 chart.update({
     series: data1

  });
  });


});
javascript highcharts
1个回答
0
投票

用于提高性能的高图表会更改原始数据数组,因此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/

© www.soinside.com 2019 - 2024. All rights reserved.