2015-01-15 83 views
1

我試圖將一個變量('maxValue')傳遞到我的Highcharts規格中。我不能讓變量成功通過,圖形呈現,但沒有價值。爲Highcharts使用變量yAxis.Max

我試過Number和parseInt函數,但都沒有區別。

我設置一個JS提琴在這裏: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請求收集的值,這個部分我已經工作,但已排除從小提琴保持簡單。幫助表示讚賞

回答

2

若要動態設置maxValue,應該這樣做,如setExtremes應該這樣做。嘗試

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

另一種選擇是更新方法:

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

對於maxValue由solidgauge顯示,你需要指定一個tickerInterval其分爲包括maxValue。目前,該圖表正在生成默認的時間間隔,例如10,這增加了高達100。例如,爲120 maxValue,你可以通過設置tickInterval至12

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

JSFiddle

+1

謝謝。使用setExtremes自動重繪圖表(我相信)現在這個工作正在進行。非常感謝 – user1286856

0

入住這裏:http://jsfiddle.net/d5d4cgbe/23/

您可以使用以下命令來設置值:爲y軸值

chart.yAxis.max = maxValue; 

檢查瀏覽器控制檯。

+0

謝謝,可以看到該更新在控制檯中。但圖表實際上使用了這個值。也許我需要重新渲染它! – user1286856