2013-02-01 30 views
1

正在很難弄清楚這個問題。在每個矩形元素下面追加svg:文本

即如果有一個SVG

<svg> 
<rect id='1'></rect> 
<rect id='2'></rect> 
<rect id='3'></rect> 
<rect id='4'></rect> 
</svg> 

我怎麼能追加SVG:使用全選,然後輸入功能每個矩形下面的文字? (實際使用JSON數據集)

我想下面的結果...等

<svg> 
<rect id='1'></rect> 
**<text>text here...</text>** 
<rect id='2'></rect> 
**<text>text here...</text>** 
<rect id='3'></rect> 
**<text>text here...</text>** 
<rect id='4'></rect> 
**<text>text here...</text>** 
</svg> 

回答

2

如果你正在使用的瀏覽數據來生成這些元素,圖案會是這個樣子。

var data = [1,2,3,4]; 
var sel = svg.selectAll("rect").data(data).enter(); 
sel.append("rect").attr("id", function(d) { return d; }); 
sel.append("text").text("..."); 
+1

這些例子可能有幫助 - 與上述相同的解決方案。 http://bl.ocks.org/4018151 – PhoebeB

+0

謝謝,這正是我想要的! – yun