我在g
标记内的defs
中有一个形状(绘制的云)。不幸的是,我无法使用d3.js在circle
内使用此形状。这是我的代码:
JSFiddle
我要做的是在SVG中显示的圆圈内显示defs标签中的形状。我已经尝试了很多次,但我无法使用defs
内circle
标记的形状。有人可以帮我解决这个问题吗?先感谢您。
答案 0 :(得分:2)
circle
不能包含其他形状。根据{{3}},它可能只包含MDN docs和descriptive elements。这些类别不包含circle
或use
等形状。
您应该创建一个父g
并将circle
和use
附加到其中,而不是嵌套您的形状:
// Create a `g`, rather than a `circle`, for each data point
var groups = svg.selectAll(".group").data(data).enter().append("g")
.attr("class", "group");
// Append a `circle` to the new g
groups.append("circle")
.attr("cx",100).attr("cy",100).attr("r",20);
// Append a `use` to the new g
groups.append("use").attr("xlink:href", "#mySymbol");