我有一个使用d3.js生成的网络拓扑图。
添加了缩放功能,如下所示
var zoom = d3.behavior.zoom()
.translate([0, 0])
.scaleExtent([1, 3])
.on("zoom", zoomed);
var svg = d3.select("div#<name>").append("svg")
.attr("viewBox", "0 0 " + width + " " + height )
.attr("preserveAspectRatio", "xMidYMid meet")
.call(zoom);
...
var containerGrp = svg.append("g");
...
function zoomed() {
var e = d3.event,
tx = Math.min(0, Math.max(e.translate[0], width - width * e.scale)),
ty = Math.min(0, Math.max(e.translate[1], height - height * e.scale));
zoom.translate([tx, ty]);
containerGrp.attr("transform", ["translate(" + [tx, ty] + ")", "scale(" + e.scale + ")"].join(" "));
}
单击拓扑图时,它会放大并停止。缩小功能无效。 有人可以告诉我是否缺少缩小代码?缩小如何使用d3.js?