我通过设置一个固定的x位置而改变y位置来绘制圆圈。问题是圆圈重叠,因为每个圆的半径是不同的。如何避免在使用d3.js时形状的重叠
在理论上理想的解决方案是,我可能想要获取前一个圆的y位置,并将当前圆的半径添加到其中以获取当前圆的y位置。纠正我,如果我认为它错了。
现在我做这样的事情,现在
var k = 10;
var circleAttributes = circles.attr("cx", '150')
.attr("cy", function (d) {
return (k++) * 10; //this is a very gray area
})
而且我得到的重叠。理想情况下,我想将这些圆圈彼此分开。即使外缘相互接触,我也能忍受。我应该如何处理它?
我写这我使用来获取半径
var rScale = d3.scale.linear()
.domain([min, max])
.range([10, 150]);
一个范围,并简单地传递,作为这样的
.attr("r", function(d) { return rScale(d.consumption_gj_);})
半径这是我的小提琴
http://jsfiddle.net/sghoush1/Vn7mf/27/
如何被确定的半径? – elsherbini
@ - elsherbini,我刚刚补充说。看看是否有帮助。在此先感谢 – soum