我是D3.js的新手并且跟随tutorial。
我很困惑为什么 circle.style(" fill"," steelblue"); 下面没有生效;但如果将样式行放在circle.enter()。append(" circle")行之后,它可以填充所有圆圈的颜色。据我了解,风格是全局的,应该应用于所有圈子,或至少影响以下代码中html中的现有圈子。
//js
var svg = d3.select("svg");
var circle = svg.selectAll("circle").data([32, 57, 112, 293], function(d) { return d; });
circle.style("fill", "steelblue");
circle.enter().append("circle")
.attr("cy", 60)
.attr("cx", function(d, i) { return i * 100 + 30; })
.attr("r", function(d) { return Math.sqrt(d); });
circle.exit().remove();
//html
<svg width="720" height="120">
<circle cx="40" cy="60" r="10"></circle>
<circle cx="80" cy="60" r="10"></circle>
<circle cx="120" cy="60" r="10"></circle>
</svg>
谢谢!