使用flot charts我想指定最小的刻度顯示在y軸上。在我的情況下,我希望始終顯示至少10個刻度(值爲1-10),但是如果我的y軸最大值超過10,那麼我希望使用正常的刻度算法繪製圖表。我現在通過爲ticks參數指定一個函數來工作。Flot:顯示最小數量的刻度
ticks: function(axis){
var ticks = [];
if(axis.max < 10){
ticks = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
}
else{
for(var i = 1; i < axis.max; i++){
ticks.push(i);
}
}
return ticks;
},
這樣做的問題是,我得到了很多更蜱比我要當axis.max
大於10是否有辦法避免這種情況?
我原本以爲我可以返回null,但flot期待返回一個數組。 :(
你已經解釋了什麼,這個功能是什麼是矛盾的。嘗試刪除'else'語句並將'if'條件更改爲小於或等於ie <=' – Alexander
@Alexander如果刪除它,else語句將創建值爲「axis.max」的tick數組那麼我將只有刻度值1-10。這不是我想要的。我希望刻度值達到y軸最大值。我只是不希望他們的增量爲1.我希望flot使用其默認算法,如果可能的話。 –
不,這是不正確的。如果刪除它,它將返回一個空數組。因此,「else」聲明即將出爐。去掉它。至於其餘的你需要動態地添加屬性,如果返回'null'沒有訣竅 – Alexander