我环顾四周,看起来这可能是不可能的,但如果您可以使用d3的选择功能来抓取整个svg标记块并将其用作您想要多次复制的结构的模式。例如:如何使用d3.js添加嵌套的svg元素到dom
<g class='nice'>
<g class="slice">
<path fill="#3182bd" d="M1.836909530733566e-15,-30A30,30 0 0,1 25.98076211353316,-14.999999999999995L0,0Z"></path>
<text transform="translate(10.500000000000002,-18.186533479473212)" text-anchor="middle">bla2</text>
</g>
<g class="slice">
<path fill="#6baed6" d="M25.98076211353316,-14.999999999999995A30,30 0 0,1 25.980762113533153,15.000000000000007L0,0Z"></path>
<text transform="translate(21,4.6629367034256575e-15)" text-anchor="middle">bla</text>
</g>
会更容易刚刚流行到当前输入回路,而不必为每个元素像
.append('path')
.attr('transform', 'M25.98076211353316,-14.999999999999995A30,30 0 0,1 25.980762113533153,15.000000000000007L0,0Z')
.attr(.... etc etc etc
我想补充的填充和d和改造ATTRS我希望d3更像jquery。任何人都知道你如何做到这一点?
这是更有针对性的面向对象的方法。我想我已经习惯了以我将要操作的语言创建模板的方便性......但这是最优雅的解决方案EG标准的oop实践:) – 2014-03-11 00:13:29