Ellipsoid与d3.js包布局绑定

时间:2017-11-22 18:16:18

标签: javascript html d3.js svg

我想用D3制作包装布局,但我希望它适应屏幕尺寸(高度和宽度,不一定相同)。

所以,首先,我正在做以下事情:

Jsfiddle 1 在第15行,我设置了

var width = 600, height = 300;

给了我这个结果:

enter image description here

我设置了两倍高度的宽度,(蓝色)边界框得到它,但是(红色)边界圆没有。下一步,我转换边界圆:

Jsfiddle 2 在第32行,我设置

 return "translate(" + d.x + "," + d.y + ")scale(2,1)";

这给了我这个结果: enter image description here

现在(红色)边界圆做我想做的事,但是它的孩子仍然在一个完美的圆圈内。我想要创建的是这样的:

enter image description here

如何?如果没有常规D3方法,我愿意使用黑客。

===两个类似的SO问题===

D3 - How to convert circle-pack to ellipse-pack? ==>这个也让孩子们省略了,我不希望这样。我也试过修理孩子,但他们也不能很好地适应椭圆。

Packing different sized circles into rectangle - d3.js ==>虽然这个有一些很好的答案,试图从头开始解决问题,但是关于将圆圈拟合成矩形,而且,答案不是使用D3。

0 个答案:

没有答案