2015-05-23 67 views
0

中使用圓圈內的defs元素我在defs標記內的g中有一個形狀(繪製的雲)。不幸的是,我無法在使用d3.js的circle內使用此形狀。這裏是我的代碼: JSFiddle如何在D3.JS

我想要做的是顯示那個形狀,它是在SVG中顯示的圓內的defs標籤。我以不同的方式嘗試過很多次,但我無法使用circledefs標籤的形狀。任何人都可以請這個問題協助我嗎?先謝謝你。

回答

2

A circle不能包含其他形狀。根據MDN docs它可能只包含descriptive elementsanimation elements。這些類別不包括形狀,如circleuse

而不是嵌套你的形狀,你應該創建一個父g和追加circleuse到:

// 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"); 

JSFiddle

+0

Joews。非常感謝您的回覆。請你用幾句話向我解釋一下你在例子中使用過的類包裝器。你有一個圓圈附加到返回包裝元素的變量圓?再次感謝您的幫助。 – user2864315

+0

我已經添加了一些註釋並整理了小提琴中的變量名稱以使其更清晰。這有幫助嗎? – joews

+0

我已閱讀評論。他們幫助很大。 Joews非常感謝你的幫助。 – user2864315