我希望能够在 D3 中设置文本元素的宽度。现在我在一个圆圈中有一些文字,但我无法设置这个元素的宽度。(假设这nodeEnter
是我图中的一个节点)
nodeEnter.append("circle")
.attr("r", function(d){return d.radius+"px";});
/* Add text in middle of circle */
nodeEnter.append('text')
.text("this is a very long text");
我想要的是找到一种简单的方法来设置该文本元素的宽度(溢出下降,如在一个简单的div
)。我现在的方式如下:
nodeEnter.append("circle")
.attr("r", function(d){return d.radius+"px";});
/* Add text in middle of circle */
nodeEnter.append("foreignObject")
.attr("width", 130)
.attr("height", 200)
.attr("class", "myCSS")
.append("xhtml:div")
.html("this is a very long text");
但是我不认为这是最好的解决方案,例如我设置的所有内容都myCSS
被覆盖了。此外,我不知道如何将外来对象居中(尤其是在 x 轴上)。
在此先感谢您的帮助。