D3.js D3将缩放添加到圆包
是否可以将缩放添加到圆包?看起来应该是这样的,但是当点击缩放时,我的鼠标在周围跳跃。几天来,我一直试图解决这个问题,但收效甚微 我一直在引用Mike的可缩放圆形包装块(#7607535)和nilanjenator的包装块(#4950148)。其他例子似乎基于这两个。这是我正在做的一把小提琴: 据我所知,我的布局问题在于以下两个功能:D3.js D3将缩放添加到圆包,d3.js,zooming,circle-pack,D3.js,Zooming,Circle Pack,是否可以将缩放添加到圆包?看起来应该是这样的,但是当点击缩放时,我的鼠标在周围跳跃。几天来,我一直试图解决这个问题,但收效甚微 我一直在引用Mike的可缩放圆形包装块(#7607535)和nilanjenator的包装块(#4950148)。其他例子似乎基于这两个。这是我正在做的一把小提琴: 据我所知,我的布局问题在于以下两个功能: t.selectAll("circle") .attr("cx", function(d) { return x(d.x);
t.selectAll("circle")
.attr("cx", function(d) {
return x(d.x);
})
.attr("cy", function(d) {
return y(d.y);
})
.attr("r", function(d) {
return k * d.r;
});
t.selectAll("text")
.attr("x", function(d) {
return x(d.x);
})
.attr("y", function(d) {
return y(d.y);
})
.style("opacity", function(d) { return k * d.r > 20 ? 1 : 0; });
此外,当我点击背景时,我无法重置viz(缩小?)。我相信它没有得到“数据”的值
//Reset when click on background
d3.select(window).on("click", function(d, i) {
zoom(data)
});
谢谢您的帮助。确定两个示例:
具有相同的输出,但实现方式不同
node.append("circle")
.attr("r", function(d) {
return d.r;
})
.attr("class", function(d) { return d.children ? "parent" : "child"; })
.attr("cx", function(d) { return d.x; })
.attr("cy", function(d) { return d.y; })
.on("click", function(d) {
zoom(node == d ? root : d);
});
我已经改变了你给我的小提琴,这是一个有效的例子:
希望这是有帮助的 确定两个示例:
具有相同的输出,但实现方式不同
node.append("circle")
.attr("r", function(d) {
return d.r;
})
.attr("class", function(d) { return d.children ? "parent" : "child"; })
.attr("cx", function(d) { return d.x; })
.attr("cy", function(d) { return d.y; })
.on("click", function(d) {
zoom(node == d ? root : d);
});
我已经改变了你给我的小提琴,这是一个有效的例子:
希望这是有帮助的 如果这是你想要的,请接受并投票支持我的答案!非常感谢你!这很有效。我非常感谢对“翻译”与“cx/cy”之间区别的解释。“svg.on”(“单击”)函数(d,i)…'看起来并没有完全放大,但我想我可以解决这个问题。我的完整版本的文本上有超链接,所以我把它们放在小提琴上只是为了测试。很好!我没有足够的声誉来支持你的答案,但如果我可以的话,我愿意。如果这是你想要的,请接受并支持我的答案!非常感谢太多了!这非常有效。我非常感谢对“translate”和“cx/cy”之间区别的解释。“svg.on”(“click”),函数(d,I)…'看起来并没有完全放大,但我想我可以解决这个问题。我的完整版本的文本上有超链接,所以我把它们放在小提琴上只是为了测试。很好!我没有足够的声誉来支持你的答案,但如果我可以的话,如果我愿意的话。