此问题已在此处得到解答:On button click open a new window and draw a large circle with D3
在Mark给出的解决方案中:
http://jsfiddle.net/aj3g5tqg/38/
sampleSVG.append('svg')
.attr('width', 500)
.attr('height', 500) //<-- give the SVG some size
.append("circle")
.style("stroke", "gray")
.style("fill", "red")
.attr("r", 200)
.attr("cx", 250)
.attr("cy", 250)
...
我无法理解如何在同一个svg中附加多个圆圈,比如在for循环中添加。
怎么做?提前谢谢!
答案 0 :(得分:0)
只需延伸附加单个圆圈的部分即可附加到循环内部。将第一个svg追加的结果转换为变量,然后迭代并追加到它:
var mySVG = sampleSVG.append('svg')
.attr('width', 500)
.attr('height', 500); //<-- give the SVG some size
for (var i=0; i < 250; i = i+10){
mySVG.append("circle")
.style("stroke", "gray")
.style("fill", "red")
.attr("r", 200)
.attr("cx", i)
.attr("cy", i)
}