dagreとd3を使用してグラフを表示します。グラフ要素とビューポートはドラッグおよびズームできます。グラフを再描画する(または別のグラフを描画する)たびにビューポートをドラッグ/ズームした後、ビューポートは以前に設定された場所に留まりますが、最初の操作でリセットされます([0,0]にジャンプし、デフォルトのズーム比)。
関数呼び出しを使用してd3のビューポートの位置をリセットするにはどうすればよいですか?
dagreとd3を使用してグラフを表示します。グラフ要素とビューポートはドラッグおよびズームできます。グラフを再描画する(または別のグラフを描画する)たびにビューポートをドラッグ/ズームした後、ビューポートは以前に設定された場所に留まりますが、最初の操作でリセットされます([0,0]にジャンプし、デフォルトのズーム比)。
関数呼び出しを使用してd3のビューポートの位置をリセットするにはどうすればよいですか?
Dagreの作者はこちら-dagreデモを使用していますか、それともこのカスタムコードですか?dagreデモを使用している場合は、観察している動作を確認できます。修正は次の行を追加することです。
svgGroup.attr("transform", "translate(5, 5)");
このコードブロックの前(dagre / demo.js、私のツリーの252行目):
svg.call(d3.behavior.zoom().on("zoom", function redraw() {
svgGroup.attr("transform",
"translate(" + d3.event.translate + ")"
+ " scale(" + d3.event.scale + ")");
}));
このチケットの下のソースコードのデモを更新しました:https ://github.com/cpettitt/dagre/issues/56
ありがとう!