重绘图表时如何使用jQuery?

时间:2016-02-11 13:18:27

标签: javascript jquery charts highcharts

我目前有一个图表,我通过调用

将其放入我的页面
function myChart(aParameter) {
  // here is some code which queries data based on aParameter
  // and sets a variable later used for series: [...] in the chart below

  $("#mychartid").highcharts({...})
}

当完成对某些单选按钮的选择时,将调用此函数:

$('#productselect input[type=radio]').change(function(){
    myChart($(this).val())
      })

它工作正常但效果不佳:完全重绘图表会移动页面,我需要在图表上向后滚动。

在搜索解决方案时,我发现a good question and answers提供了有关如何正确更新图表的详细信息(我希望能解决我的问题)。它建议首先创建一个图表(chart = new Highcharts.Chart(chartOptions)),然后使用chart.series[0].setData(data,true);的咒语来更新数据。

我缺少的是如何在我的页面上初始定位这样的图表(使用jQuery),类似于我上面的$("#mychartid").highcharts({...})

1 个答案:

答案 0 :(得分:1)

除了将其分配给变量之外,您仍然可以完全按原样创建图表。所以

$("#mychartid").highcharts(chartOptions);
var chart = $("#mychartid").highcharts();

然后,您可以在chart上执行您想要的任何操作,包括

chart.series[0].setData(data,true); 

示例:

** 更新以更正代码 **