2017-01-10 66 views
1

我正在尝试使用D3制作泡泡图并在泡泡内放置文本。我已经通过大量的实例检查,明白HTML DOM应该像周围的圆圈和文本标签 ,我相信我在我的jsfiddle例如一组标签: https://jsfiddle.net/q4nszx34/SVG上未显示文本元素

我试图使文本出现在同一个区域经由泡沫:

circles.append("text") 
     .attr("dx", -10) 
     .attr("dy", ".35em") 
     .text(function (d) { 
      return d.key; 
     }) 
     .style("stroke", "gray"); 

然而,文本元素的位置并不在同一位置作为我的泡沫,我不知道怎么去泡的位置来设置文本的位置。

预先感谢您。

回答

1

ticked功能,您的翻译组元素:

circles.attr("transform", function(d){ 
    return "translate(" + d.x + "," + d.y + ")"; 
}) 

这样一来,无论是<circle><text>元素将一起移动。

这里是你的更新提琴:https://jsfiddle.net/k45oaztv/

+0

啊我明白了,所以不是仅选择我的文字组,我会选择一个更大的群体和他们一起移动?谢谢(你的)信息! – Calpis

+0

抱歉后续问题,但是当我添加多个气泡时,文本开始被气泡重叠。有没有办法让文字出现在泡泡的前面? – Calpis