D3 Layout erzwingen: Schwenken beim Ziehen (Zoomen) glatter machen

Ich habe ein statisches Kraft-Layout-Diagramm für d3.js, das ziemlich groß werden kann (manchmal werden Teile davon abgeschnitten). Daher möchte ich den Benutzer das gesamte Diagramm durch Ziehen verschieben lassen. Ich glaube nicht, dass ich einzelne Knoten ziehen muss. Ich habe das Gefühl, dass dies nur verwirrend sein wird, möchte aber die Darstellung der Teile des Diagramms ermöglichen, die von den SVG-Grenzen abgeschnitten werden.

Ich habe ein minimales Beispiel anhttp://bl.ocks.org/3811811 welche verwendet

visF.append("rect")
 .attr("class", "background")
 .attr("width", width)
 .attr("height", height)
 .call(d3.behavior.zoom().on("zoom", redrawVisF));
function redrawVisF () {
  visF.attr("transform","translate(" + d3.event.translate + ")" + " scale(" + d3.event.scale + ")");
}

um das Schwenken zu implementieren, aber ich finde es wirklich "skittery" und überhaupt nicht sehr glatt, bis zu dem Punkt, an dem ich vermute, wird es die Leute davon abhalten, die Drag-Funktion überhaupt zu versuchen. Hat jemand eine Ahnung, warum dies passiert und / oder eine Idee, wie dies behoben werden kann?

Antworten auf die Frage(1)

Ihre Antwort auf die Frage