为 Highcharts 使用变量 yAxis.Max

Use a variable for Highcharts yAxis.Max

我正在尝试将一个变量('maxValue')传递到我的 Highcharts 仪表中。我无法让变量成功传递,图形呈现但没有值。

我试过 Number 和 parseInt 函数,但两者都没有区别。

我在这里设置了一个 JS fiddle:http://jsfiddle.net/d5d4cgbe/16/

有问题的代码部分:

var maxValue = 120; //set the maxValue var

 $('#visitPerformanceWeek').highcharts(Highcharts.merge(gaugeOptions, {
            yAxis: {
                min: 0,
                max: maxValue,
                title: {
                    text: 'Hours Worked'
                }
            },

我最终会传递从 AJAX 请求中收集的值,这部分我正在处理,但已从 fiddle 中排除以保持简单。帮助赞赏

在此处查看:http://jsfiddle.net/d5d4cgbe/23/

您可以使用以下命令设置值:

chart.yAxis.max = maxValue;

检查浏览器控制台的 y 轴值。

要动态设置 maxValue,应该使用 setExtremes 之类的东西。尝试

chart.yAxis[0].setExtremes(0,maxValue);

另一种选择是更新方法:

chart.yAxis[0].update({ max: maxValue });

要让solidgauge 显示maxValue,您需要指定一个tickerInterval 来划分maxValue。目前,图表正在生成默认的报价间隔,例如10,加起来是 100。例如,maxValue 为 120,您可以将 tickInterval 设置为 12

   yAxis: {
        min: 0,
        max: 120,
        tickInterval: 12,
        ...
   }

JSFiddle