我遇到了一個highcharts問題,其中有許多不同的圖表是由JSON調用生成的。將highcharts的y軸最小值設置爲0,除非存在負數據
對於大多數這些圖表,我需要將最小y軸值設置爲0,但是有幾次需要顯示負值。只有在數據中沒有負值的情況下,我如何才能告訴highcharts最小y軸值爲0,這甚至可能嗎?
謝謝
我遇到了一個highcharts問題,其中有許多不同的圖表是由JSON調用生成的。將highcharts的y軸最小值設置爲0,除非存在負數據
對於大多數這些圖表,我需要將最小y軸值設置爲0,但是有幾次需要顯示負值。只有在數據中沒有負值的情況下,我如何才能告訴highcharts最小y軸值爲0,這甚至可能嗎?
謝謝
您可以準備自己的功能,檢查是否爲否,然後設置適當的刻度。爲了實現這一目標,你應該使用tickPositioner http://api.highcharts.com/highcharts#yAxis.tickPositioner
您可以添加到您的y軸:
yAxis: {
title: {
text: 'Title of the y-axis'
},
min: 0 // this sets minimum values of y to 0
},
這將始終設置最小爲0 問題問:「只有當數據中沒有負值時,我如何才能告訴highcharts最小y軸值爲0」 – MurWade 2015-10-06 00:21:25
完美的解決方案。保存一些UI空間 – sansid1983 2017-05-09 18:32:38
我通過創建使用setExtremes
var setMin = function() {
var chart = this,
ex = chart.yAxis[0].getExtremes();
// Sets the min value for the chart
var minVal = 0;
if (ex.dataMin < 0) {
minVal = ex.dataMin;
}
//set the min and return the values
chart.yAxis[0].setExtremes(minVal, null, true, false);
}
然後在創建圖表的功能來實現這一點,你這樣稱呼它:
$('#container').highcharts({
chart: {
events: {
load: setMin
}
},
});
你可以se t「floor」,它定義了min的最小可能值。當添加負值時,它們將不可見! (http://api.highcharts.com/highcharts/xAxis.floor)
yAxis: {
floor: 0
}
我知道這個問題已經被問了很久以前,這個屬性並沒有在當時存在。但我只是遇到了這個問題,我認爲其他人會很樂意不必搜索。
您正在查找的選項稱爲softMin
,版本號爲5.0.1。文檔描述如下:
該軸的軟最小值。如果系列數據最小值大於 ,那麼軸將停留在最小值,但如果系列數據最小值較低,軸將顯示所有數據。
yAxis: {
softMin: 0
}
鏈接到最好/正確的解決方案,如果您正在使用Highcharts 5.0及以上https://stackoverflow.com/a/41105873/2952405 – 2017-08-07 11:57:15