2012-08-28 162 views
4

jqPlot中,我有兩個系列在圖中呈現。他們顯示不同的數據,以不同的單位測量,所以他們都有自己的y軸(yaxisy2axis)。jqPlot對齊不同y軸的零點

jqPlot自動構造兩個y軸以適應數據範圍。沒關係 - 我不想手動設置軸min, max, ticks,因爲數據的範圍可能差別很大。

但是,我想要將y-axes0滴答對齊到同一級別。這可能嗎?

注:可能有人會認爲沒有點對準,例如,0° C溫度與0 ms^-1風速,如存在值之間沒有數學關係。但它確實看起來好多了,如果是這樣,並期待好是整點的圖表:)

測試例如:

var data1 = [[0, 0], [3, 50]]; 
var data2 = [[0, 0], [3, -50]]; 

$.jqplot('chart', [data1, data2], { 
    series: [ 
    { yaxis: 'yaxis' }, 
    { yaxis: 'y2axis' }, 
    ]   
}); 

回答

3

我認爲這絕對是jqplot的錯誤。

看到這三個小提琴[1],[2][3]。第一個是從上一版jqplot的例子中提取的。第二個顯示默認模式,禁用forceTickAt0和alignTicks。最後,第三個是同一個原始的,但是第一個序列中的第二個數據值是負值。

你可以看到第一個例子中零點是如何對齊的。然而,在第三個示例中,儘管所有設置保持不變,但軸不再對齊。

您可以嘗試在jqplot issues page中爲此提出問題。

與此同時,要解決您的問題,您可以通過向值添加偏移量以便全部變爲正值,然後重寫軸標籤以顯示此偏移量差異來解決此問題。您可以看到example here。不過,恐怕這還不完全是你想要完成的。