0
我有一條線d3線圖(可以在這裏查看 - the graph)。圖形只允許在y軸上縮放。默認情況下,它允許拖動。我想阻止人們在y軸上拖動到0以下。我在某處讀到,沒有必要寫一個新的拖動功能,因爲縮放處理。因此,我嘗試在我的函數(重繪)上實現邏輯,這是在縮放時調用的,但一直無法弄清楚我如何防止人們在y軸上拖動到0以下。下面是重繪功能防止d3線圖中的y軸在阻力下低於0
function redraw() {
if (y.domain()[0] < 0) {
y.domain()[0] = 0;
vis.selectAll("[ty='line']").attr('d', line);
vis.select(".y.axis").call(yAxis);
return;
} else {
vis.select(".y.axis").call(yAxis);
vis.selectAll("[ty='line']").attr('d', line);
}
}
參見[這個例子](http://bl.ocks.org/張貼在評論的代碼garrilla/11280861)。 –
@LarsKotthoff對此非常感謝。它仍然有點bug,但工作像90%的時間 –
嗯,這個例子對我來說工作得很好。 –