我正在研究d3中的一个节点图(见这里:http://jsfiddle.net/u56Tr/1)图本身是非常圆形的(链接/节点在所有方向上分布相对均匀) - 我如何在16:9窗口?我想我不得不扩大元素的x,y位置,但我不太清楚。d3.js - 如何水平扩展力指向图?
相关D3代码:
force.on("tick", function() {
link.attr("x1", function(d) {
return d.source.x;
})
.attr("y1", function(d) {
return d.source.y;
})
.attr("x2", function(d) {
return d.target.x;
})
.attr("y2", function(d) {
return d.target.y;
});
node_bg.attr("cx", function(d) {
return d.x;
})
.attr("cy", function(d) {
return d.y;
});
node.attr("x", function(d) {
return d.x - (d.group > 0 ? 24 : 32);
})
.attr("y", function(d) {
return d.y - (d.group > 0 ? 24 : 32);
});
});
使用多焦点力布局示例中的方法(只是Google这个词组)可以做到你想要的,但是对于你的情况来说,这最终可能会与力布局作斗争,产生意想不到的结果。 (我曾试过这样的事情。)所以我认为Lars Kotthoff对于部队布局是正确的。不过,你可能想看看[可乐布局](http://marvl.infotech.monash.edu/webcola/)。我从来没有尝试过,但它看起来会让你更容易做到你想要的。 – Mars