防止d3折线图中的y轴在拖动时低于0

时间:2015-04-06 17:44:52

标签: javascript d3.js graph

我有一条d3线图(可在此处查看 - the graph)。该图表仅允许在y轴上进行缩放。默认情况下,它允许拖动。我想阻止人们在y轴上拖动0以下。我在某处读到不需要为拖动编写新函数,因为缩放处理它。因此,我试图在我的函数(重绘)上实现逻辑,当你缩放时调用它,但是我无法弄清楚如何阻止人们在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);
    }        
} 

1 个答案:

答案 0 :(得分:0)

Lars Kotthoff的评论中提供了如何解决问题的链接