0
我在使用d3.js實現的條形圖中出現了一個奇怪的問題:每個矩形之間的1 px填充看起來不規則。我收集寬度或x位置都是罪魁禍首,但我不明白我在做什麼錯誤:寬度是svg區域的一部分,X位置是通過D3比例獲得的。d3.js:正確獲取條寬或X位置?
我已經把這裏演示:http://jsfiddle.net/pixeline/j679N/4/
代碼(秤)controling x位置:
var xScale = d3.time.scale().domain([minDate, maxDate]).rangeRound([padding, w - padding]);
代碼控制寬度:
var barWidth = Math.floor((w/dataset.length))-barPadding;
謝謝爲了您的洞察力。
試過,但它顯然不令人滿意。使用範圍而不是rangeRound不能解決問題。我想我需要更多地融入自定義縮放方法。 – pixeline
據我所見,問題是如果你平均分配間隔,你最終會得到分數像素值。您可以實施自定義比例縮放方法,以確保小節之間的距離始終相同,但小節本身會有不同的寬度。如果你想確保「好」的價值,你將不得不限制輸出域根據酒吧的數量等,這樣的數字加起來。 –