将文字置于圆圈内。 d3.js
我正在尝试修改代码,并且在我所做的修改中,我无法将文本置于圆圈中间。我已经尝试了很多东西,并且看过几个例子,但它对我不起作用。我该怎么做? 我知道这件事应该完成,我添加一个文本标签,但它不起作用。将文字置于圆圈内。 d3.js
bubbles.enter().append('circle')
.classed('bubble', true)
.attr('r', 0)
.attr('fill', function (d) { return fillColor(d.group); })
.attr('stroke', function (d) { return d3.rgb(fillColor(d.group)).darker();
})
.attr('stroke-width', 2)
.on('mouseover', function(){})
.on('mouseout', function(){});
的文本创建另一个选择:
var bubblesText = svg.selectAll('.bubbleText')
.data(nodes, function(d) {
return d.id;
});
bubblesText.enter().append('text')
.attr("text-anchor", "middle")
.classed('bubble', true)
.text(function(d) {
return d.name
})
并将其移动蜱函数内。
这里是更新plunker:http://plnkr.co/edit/UgDjqNhzbvukTWU6J9Oy?p=preview
PS:这是一个非常通用的答案,只是显示你如何显示文本。这个答案不涉及细节,如大小或转换,这些超出了问题的范围,而且您必须实施自己。
太好了,我有个问题,这条线的用途是什么?另一件我想知道的是如何为小圈子添加一定大小的文字。 (会很好的计算出它们不超过圆的大小,从而确定合适的大小..)manyisimas谢谢。你是拉丁语? – yavg
正如我在我的文章中告诉你的,这些是不同的问题,如果你发布关于文本大小的不同问题,这是一个更好的主意。关于这条线,你没有告诉我你在说什么(如果你的意思是“拉丁裔”,是的,我是)。 –
我忘了告诉你什么路线,我会说西班牙语,在即将到来的场合,我们能否用我们的母语来了解彼此?我用英语不太好。bubblesText = svg.selectAll('。bubbleText') .data(nodes,function(d){return d.id;}); – yavg
https://stackoverflow.com/questions/13615381/d3-add-text-to-circle – bryce
@brycedorn我试过了,但没有成功... http://plnkr.co/edit/2BCVxQ5n07Rd9GYIOz1c?p =预览 – yavg