Highcharts spiderweb图表在调用series.setData后调整轴的大小

时间:2013-02-21 22:25:25

标签: javascript highcharts

我有一个Highcharts spiderweb图表,其中包含我每隔X分钟通过ajax更新的系列数据。当我最初加载页面时,它看起来像这样:

spiderweb chart on initial load

但是,在对系列数据进行第一次和后续更新后,图表如下所示:

spiderweb chart after first and subsequent updates with same data

请注意,在示例中,用于更新图表的系列数据与用于初始化图表的原始数据完全相同。

这是jsFilddle that reproduces the behavior。以下是更新系列数据的行:

chart.series[0].setData([14, 10, 1, 7, 7]);

重现的步骤:

  1. 加载页面
  2. 点击“设置新数据按钮”
  3. 更新图表时我做错了什么?

2 个答案:

答案 0 :(得分:0)

出于某种意外原因,您必须逐步创建新的Highchart以及更新图表。

查看我的演示http://jsfiddle.net/pm7Cn/1/

看看我如何在函数外面声明我的变量,以便能够在整个脚本中访问它们。

var chart;
var flagIn = 1;
var options, series2, title2; 

另外,请记住我初始化我的“选项”变量,然后我创建了Highcharts对象

options = {....}
chart = new Highcharts.Chart(options);

为了创建新图表,我将在series2和Title 2中推送我的新数据,然后我尝试更新我的图表对象。

options.series = series2;
options.title = title2;
chart = new Highcharts.Chart(options);
console.log("update");

<强>更新 http://jsfiddle.net/pm7Cn/2/ 在上面的小提琴中,您可以看到一遍又一遍地加载相同的数据多边形

答案 1 :(得分:0)

您是否尝试将最小/最大值或tickInterval设置为5?

http://api.highcharts.com/highcharts#yAxis.tickInterval