d3.js:限制泛

gip*_*adm 5 javascript d3.js

我正在研究具有平移功能的基本线性图表.

我设法通过限制d3.event.translate值来限制图表元素的拖动程度:

var tx = Math.max(0, d3.event.translate[0]),
    ty = Math.min(0, d3.event.translate[1]);
Run Code Online (Sandbox Code Playgroud)

我现在需要的是相应地限制x和y轴.请参阅示例:http: //jsfiddle.net/Q2SWV/

向下或向左拖动时,图表上的条形受限制为0.x轴和y轴不是.关于如何解决轴问题的任何想法?

mdm*_*dml 5

您非常接近,但是您错过了zoom使用更新的翻译坐标更新行为的最后一步.这将解决您的问题,因为两个轴都使用更新zoom.添加以下权限判定后txty:

zoom.translate([tx, ty]);
Run Code Online (Sandbox Code Playgroud)

这将对轴应用限制.请点击此处更新的小提琴:http://jsfiddle.net/mdml/nZD3E/.