我有以下 2 个代码片段。我想知道为什么第二个不会生成四个圆圈?
这将产生四个圆圈。
var sampleSVG = d3.select("#viz")
.append("svg")
.attr("width", 500)
.attr("height", 500);
sampleSVG.append("circle").style("stroke", "gray").style("fill", "white").attr("r", 10).attr.("cx", 80).attr("cy", 70);
sampleSVG.append("circle").style("stroke", "gray").style("fill", "white").attr("r", 10).attr.("cx", 140).attr("cy", 130);
sampleSVG.append("circle").style("stroke", "gray").style("fill", "white").attr("r", 10).attr.("cx", 200).attr("cy", 190);
var circle = sampleSVG.selectAll("circle").data([32, 57, 112, 293]);
var enter = circle.enter().append("circle");
enter.attr("cy", 90)
.attr("cx", 160)
.attr("r", function(d){return Math.sqrt(d);});
circle.style("fill", "steelblue");
这个不会产生四个圆圈。只显示了三个圆圈。
var sampleSVG = d3.select("#viz")
.append("svg")
.attr("width", 500)
.attr("height", 500);
sampleSVG.append("circle").style("stroke", "gray").style("fill", "white").attr("r", 10).attr.("cx", 80).attr("cy", 70);
sampleSVG.append("circle").style("stroke", "gray").style("fill", "white").attr("r", 10).attr.("cx", 140).attr("cy", 130);
sampleSVG.append("circle").style("stroke", "gray").style("fill", "white").attr("r", 10).attr.("cx", 200).attr("cy", 190);
var circle = sampleSVG.selectAll("circle");
circle.data([32, 57, 112, 293]);
var enter = circle.enter().append("circle");
enter.attr("cy", 90)
.attr("cx", 160)
.attr("r", function(d){return Math.sqrt(d);});
circle.style("fill", "steelblue");
我不知道为什么他们有不同的结果。不应该 var circle = sampleSVG.selectAll ("circle").data([32, 57, 112, 293]); 与var circle = sampleSVG.selectAll("circle");相同 circle.data([32, 57, 112, 293]); ?