http://bl.ocks.org/JohnBerryman/2295155
这是我向 D3 添加模板的尝试。我在 Inkscape 中绘制了原始人脸,然后将 SVG 转换为 iCanHaz 模板,并使模板变量与面部测量值相对应。通过这种方式,我可以定义一张脸(并通过扩展,任何其他方式),我可以轻松地实例化这张脸,或者甚至通过更新绑定(bind)到脸对象的数据来改变这张脸。代码的第一部分(如果您滚动浏览演示)是 D3 的补丁,然后代码的其余部分使用该补丁。
不幸的是,我从来没有对此进行过很好的测试,也没有向 Bostock 先生提交拉取请求。
问题:
- 我还是 D3 的新手。这是否可以在 D3 中完成,我只是不知道。
- 这通常有用吗?是否值得提交拉取请求?
- 它是 d3 风格的吗?此处的代码是否代表适合 d3 的代码?
最佳答案
@meetamit 的方法是正确的,但您必须使用 polyfill 才能在 SVG 上应用 d3.select.html
方法。此方法使用 innerHTML
并且在 SVG 元素上不受支持。检查
d3.select.html reference
关于d3.js - 将模板添加到 D3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15046336/