d3.js - 将模板添加到 D3

标签 d3.js templating

http://bl.ocks.org/JohnBerryman/2295155

这是我向 D3 添加模板的尝试。我在 Inkscape 中绘制了原始人脸,然后将 SVG 转换为 iCanHaz 模板,并使模板变量与面部测量值相对应。通过这种方式,我可以定义一张脸(并通过扩展,任何其他方式),我可以轻松地实例化这张脸,或者甚至通过更新绑定(bind)到脸对象的数据来改变这张脸。代码的第一部分(如果您滚动浏览演示)是 D3 的补丁,然后代码的其余部分使用该补丁。

不幸的是,我从来没有对此进行过很好的测试,也没有向 Bostock 先生提交拉取请求。

问题:

  1. 我还是 D3 的新手。这是否可以在 D3 中完成,我只是不知道。
  2. 这通常有用吗?是否值得提交拉取请求?
  3. 它是 d3 风格的吗?此处的代码是否代表适合 d3 的代码?

最佳答案

@meetamit 的方法是正确的,但您必须使用 polyfill 才能在 SVG 上应用 d3.select.html 方法。此方法使用 innerHTML 并且在 SVG 元素上不受支持。检查 d3.select.html reference

My solution on bl.ocks

D3 Templating Plugin

关于d3.js - 将模板添加到 D3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15046336/

相关文章:

for-loop - 无法使用 Nunjucks for 循环获取数组中项目的索引

javascript - 试图在 javascript 中理解 .some()

jquery - 在 jquery 之后绘制 dimple.js 图表时,Firefox 中的 NS_ERROR_FAILURE

javascript - 将可点击区域添加到 svg

css - 如何在 Polymer 模板中使用 bool 值切换类?

ansible - 在 Ansible 中使用模板模块附加文件

jsf - 如何在 Facelets 模板中引用 CSS/JS/图片资源?

d3.js - 使用 d3.js 在 map 点上绘制饼图

python - 改变 networkx/matplotlib 力图中的边长和簇间距

php - 在 call_user_func_array(...) 中传递关联数组