2016-09-15 104 views
0

我有一張columnrange高圖。兩條水平網格線之間的垂直距離取決於我繪製的點數。如何修正HighCharts中的列距離網格距離?

例如,如果我在不同的垂直高度有6個點,網格距離更大,並且如果我將網格點增加到10-12,則距離減小。

據我所知,這是因爲,圖表試圖通過調整上述兩種情況下兩個gridLines之間的垂直距離來適應整個高度。

但是,是否可以固定gridLines距離而不考慮要繪製的點的數量,並相應地調整圖表容器的總高度。

我想:

xAxis:{ 
    labels:{ 
          distance:10 //fixed 
         } 
} 

固定tickInterval也沒有幫助。 另外我試圖給我的圖表容器height:auto,但沒有奏效。

雖然它似乎基本固定gridLines之間的距離,但我不知道怎麼做。請有人幫忙。這裏演示 http://jsfiddle.net/ay1Lk2yw/2/

回答

0

你可以計算出你的圖表應該多大,並調整其大小,使網格線將彼此之間距離不變。

var gridLinesDistance = 20, //in pixels 
    top = chart.plotTop, 
    bottom = chart.spacing[2], 
    axis = chart.xAxis[0], 
    range = axis.dataMax - axis.dataMin + 1, 
    newHeight = top + range * gridLinesDistance + bottom; 

$("#container").height(newHeight + 'px'); 
chart.reflow(); //adjust the chart to the new size 

演示:http://jsfiddle.net/u32gam9r/

0

這可能是你在找什麼? http://jsfiddle.net/remisture/h2k0gjm5/

yAxis: { 
    tickPixelInterval: 10 
} 
+0

我與'columnrange'類型,其中'X-axis'是垂直的一個工作。當我將它應用於我的代碼時,上述解決方案不起作用。你可以在這裏找到我的代碼 http://jsfiddle.net/ay1Lk2yw/2/ –