我正试图通过向svg添加一个新的圆圈来填充圆环图的中间位置。圆圈应该是白色的并且覆盖背景中的水平线,但是我在圆环图中间实现了透明圆圈。
这是我目前为止的代码和img enter image description here:
var width = 650,
height = 500,
outerRadius = 100,
innerRadius = outerRadius - 80;
var arc = d3.svg.arc()
.outerRadius(outerRadius)
.innerRadius(innerRadius);
var arcOver = d3.svg.arc()
.innerRadius(innerRadius)
.outerRadius(outerRadius + 5);
var pie = d3.layout.pie()
.sort(null)
.value(function(d) { return d.value; });
// Define the div for the tooltip
var div = d3.select("body").append("div")
.attr("class", "tooltip")
.style("opacity", 0);
var svg = d3.select('.chart-container').append("svg")
.attr("width", width)
.attr("height", height)
.append("g")
.attr("transform", "translate(325,250)");
svg.append("svg:circle")
.attr("cx", 0)
.attr("cy", 0)
.attr("r", 20)
.append("g");
答案 0 :(得分:2)
这应该可以解决问题:
svg.append("svg:circle")
.attr("cx", 0)
.attr("cy", 0)
.attr("r", 20)
.style("fill", "white")
.append("g");
或者更好的方法是做这样的事情:
svg.append("svg:circle")
.attr("cx", 0)
.attr("cy", 0)
.attr("r", 20)
.attr("class", "white-circle")
.append("g");
然后,在CSS中:
.white-circle {
fill: #FFF;
}