2014-04-01 27 views

回答

1

您正在混合放大d3的兩種不同方式 - 縮放(「語義」縮放)和縮放(「幾何」縮放)。見this answer for a detailed breakdown of the differences

您已將縮放附加到縮放行爲,因此當您縮放或平移縮放時,請修改以反映更改。但是,您只是使用該修改來重繪軸,因爲您正在使用幾何變換創建縮放效果。直到你嘗試重繪任何你的情節(或者,繪製一個新的形狀)。當您這樣做時,修改後的比例尺和變換後的比例值會加在一起,從而使縮放比例和平移效果翻倍,從而導致與座標軸不在一個位置的形狀。

解決方法是簡單地做一個或另一個。 將您的比例尺連接到縮放行爲,然後使用這些比例在每次縮放事件後重繪所有形狀; 使用轉換 - 但隨後放大和縮小時,軸不會自動更改刻度間距。

+1

感謝您的指針!我已經使用語義縮放http://jsbin.com/xuban/2/edit修復了它 – alphageek

相關問題