當傳遞所有y值設置爲零的數據時,請稍微修改linePlusBarChart模型()的版本Y軸向我顯示介於1和-1之間的範圍。可以設置0到1之間的範圍嗎?Nvd3:如果所有y值爲0,如何防止在-1和1之間顯示圖表?
已嘗試chart.yAxis.scale().domain([0]);
和chart.forceY([0])
但沒有。
當傳遞所有y值設置爲零的數據時,請稍微修改linePlusBarChart模型()的版本Y軸向我顯示介於1和-1之間的範圍。可以設置0到1之間的範圍嗎?Nvd3:如果所有y值爲0,如何防止在-1和1之間顯示圖表?
已嘗試chart.yAxis.scale().domain([0]);
和chart.forceY([0])
但沒有。
forceY
強制域包含您傳入的值,它不縮小從數據創建的域。要設置特定域,請設置chart.yDomain([0,1])
。但是,無論您的數據是什麼,這都會將域設置爲[0,1]。據我瞭解,你只想改變當你所有的y值爲0時的行爲。
爲此,請嘗試chart.forceY([1])
。現在,當NVD3試圖找出域時,它將看到數據和的零值來自force聲明。所以它將有一個有效的域,它不需要通過從數據值中加1減1來構成一個域。
你需要兩個元素的數組傳遞給'forceY'插入一行 - - http://stackoverflow.com/questions/11766879/d3-js-nvd3-js-how-to-set-y-axis-range –
已經嘗試但沒有,問題仍然存在 – byterussian
你可以把你的代碼放在JSFiddle – shabeer90