D3.js 如何在声明zoom后更改zoom.translateExtent

D3.js 如何在声明zoom后更改zoom.translateExtent,d3.js,D3.js,我知道这个 var zoom=d3.zoom().scaleExtent([1, Infinity]).translateExtent([[0, 0], [width, height]]).extent([[0, 0], [width, height]]).on("zoom", zoomed); …设置缩放的范围 当我想更改translateExtent时,我尝试了以下方法: zoom.translateExtent([[100, 100], [width, height]] 但是它不起作用

我知道这个

var zoom=d3.zoom().scaleExtent([1, Infinity]).translateExtent([[0, 0], [width, height]]).extent([[0, 0], [width, height]]).on("zoom", zoomed);
…设置缩放的范围

当我想更改translateExtent时,我尝试了以下方法:

zoom.translateExtent([[100, 100], [width, height]]
但是它不起作用

如何更改zoom.translateExtent?

函数缩放(){
function zoom(){
    var t=d3.event.transform;
   if(t.x<=100){
       t.x=100// when t.x <100  make t.x=100
   }else if(t.x>=200){
       t.x=200
   }
    selection.attr("transform",t);//set up your selection`s transform,lock the zoon events 
}
var t=d3.event.transform; 如果(t.x
函数缩放(){
var t=d3.event.transform;

如果(t.x虽然这个代码片段可以解决这个问题,但确实有助于提高您文章的质量。请记住,您是在为将来的读者回答这个问题,而那些人可能不知道您的代码建议的原因。同时,请尽量不要用解释性注释挤满您的代码,这会降低两个代码的可读性他的代码和解释!不幸的是,我的英语太差了,无法做出详细的描述,希望它实际上不会有帮助。它只是限制了转换,但不会影响d3js的翻译实现,所以用户需要向后滚动足够多。虽然这个代码片段可以解决问题,但确实有助于提高q请记住,你是在回答将来读者的问题,这些人可能不知道你的代码建议的原因。也请尽量不要用解释性的注释挤满你的代码,这会降低代码和解释的可读性!不幸的是,我的英语太差,无法详细说明描述有问题,希望实际不会有帮助。它只是限制了转换,但不会影响d3js的翻译实现,所以用户需要向后滚动足够多。有这个问题的答案吗?有这个问题的答案吗?