2014-11-24 35 views
0
chart.xAxis.tickFormat(function(d) { 
    ... 
} 

是否有可能獲得「d」變量數組,這些變量在執行之前會傳遞給此回調函數?我需要首先分析這個數組,以瞭解哪些值在圖表上顯示,以及我應該隱藏哪些值。獲取所有刻度值(NVD3)

或者我可以糾正這個數組並將其傳遞給tickValues。

+0

'chart.xAxis.ticks()' – 2014-11-24 14:55:40

+0

@LarsKotthoff它返回某種圖表寬度。例如:「10.95」。如果我縮小圖表,它會返回類似於「7.65」的內容。 – user1561346 2014-11-24 15:05:51

+0

嗯,事實證明,NVD3不會公開這個D3方法,而是用它自己的方法覆蓋它,它不會設置刻度值......從源代碼看來,您應該能夠得到刻度值()函數自動設置,它們使用'chart.xAxis.scale()。ticks(Math.abs(chart.xAxis.scale()。range()[1]) - chart.xAxis.scale()。range()[0])自動設置。/100)'。 – 2014-11-24 15:20:25

回答

1

NVD3不公開從規模/軸入門刻度值D3的方法,但有自己的方法,不設置刻度值覆蓋它...

the source code,它看起來像你應該能夠獲取與

chart.xAxis.scale() 
    .ticks(Math.abs(chart.xAxis.scale().range()[1] - chart.xAxis.scale().range()[0])/100) 

注意,這隻適用於水平軸工作自動設置刻度值(即X你的情況軸等)。