2013-07-09 22 views

回答

2

該圖表無法計算明智的y軸比例,因爲它沒有最小/最大值繼續。如果你告訴它最大,那麼它呈現你想要的:

yAxis: { 
    endOnTick: false, 
    minPadding: 0, 
    max:1 
}, 

如果你不想通過你的數據迭代制定出如果所有的點都爲零,讓highcharts做的工作適合你的無論如何,它必須計算最小/最大值。您可以撥打getExtremes制定出最大的y值,並使用setExtremes強制特定的最大值:

chart: { 
     plotBorderWidth: 1, 
     type: 'column', 
     events: { 
      load: function (event) { 
       var extremes = this.yAxis[0].getExtremes(); 
       if (extremes.dataMax == 0) { 
        extremes.max = 1; 
        this.yAxis[0].setExtremes(0, 1); 
       } 
      } 
     } 
    }, 

http://jsfiddle.net/CbwrB/

+0

爲每個圖表設置最大值不是一個合適的解決方案。我擁有一個包含1000個點的巨大數據集,並且我無法通過相同的方法迭代以確定最大點。是否還有其他解決方案可以使用?我可以將最小值設置爲0雖然 – Viji

+0

對數據進行迭代並不是什麼大不了的事情。 Highcharts做它爲了繪製圖形。如果您不想這樣做,請參閱我的更新後的帖子,以獲取有關加載事件手輪中最小/最大值的highcharts的方法。 – SteveP

-1

,如果你婉見圖表甚至當值爲零,你可以去

plotOptions: { 
series: { 
    minPointLength: 3 
} 
}, 

這裏是你更新的提琴http://jsfiddle.net/hcJjX/4/

希望這將是使用

+0

其實我遇到的問題是出現在圖表中間的那一行。請看下面的例子:[link](http://jsfiddle.net/hcJjX/2/)。然而,他們的建議是設置最小值和最大值,這可能是不可能的.Atleast我可以將最小值指定爲0,但不可能爲每個圖表計算最大值。迭代數據集會很麻煩。 – Viji

0

這裏是帶有日期時間值類型的列。所以,請與 「空」 去而不是0

像下面給出

系列:[{
數據:[1373308338468,空],[1373308938471,空]
}]

但是通過minRange爲 「0.01」

實施例在Y軸的解決方法,

YAXIS:{分鐘:0,minRange:0.01}