Javascript 缩放被d3.behavior.zoom()忽略

Javascript 缩放被d3.behavior.zoom()忽略,javascript,d3.js,Javascript,D3.js,我设置它是为了找出我传递给d3.behavior.zoom的比例被忽略的原因。我将刻度设置为10,但有效刻度为1。然后,如果我尝试平移网格,比例会跳到10。当我尝试缩放网格时也会发生同样的情况。比例跳到10,然后应用附加比例。我做错了什么?如何计算出有效的初始缩放值?您正在初始化一个var scale=10来表示初始缩放,并通过.scale10将其应用于缩放器。所以zoomer知道初始比例,但代码中没有任何内容可以将初始比例应用于d3选择Vi。第一次实际应用比例是在用户交互之后,这反过来调用函数

我设置它是为了找出我传递给d3.behavior.zoom的比例被忽略的原因。我将刻度设置为10,但有效刻度为1。然后,如果我尝试平移网格,比例会跳到10。当我尝试缩放网格时也会发生同样的情况。比例跳到10,然后应用附加比例。我做错了什么?如何计算出有效的初始缩放值?

您正在初始化一个var scale=10来表示初始缩放,并通过.scale10将其应用于缩放器。所以zoomer知道初始比例,但代码中没有任何内容可以将初始比例应用于d3选择Vi。第一次实际应用比例是在用户交互之后,这反过来调用函数zoom{…},最终应用比例

应用初始比例的时间/地点是在创建vis时:

这是

//create a group that will hold all the content to be zoomed
var vis = graph.append("svg:g")
    .attr("class", "plotting-area")
    .attr("transform", "scale(" + scale + ")");// <-- THIS