d3.js - d3js (v4) Canvas 强制布局在节点上带有文本

标签 d3.js force-layout

我有一个非常基本的问题。我正在尝试重现 https://bl.ocks.org/mbostock/ad70335eeef6d167bc36fd3c04378048但我只想在每个节点上添加一些文本。
我可以用 svg 做到这一点,但我想使用 Canvas 版本进行高效渲染。

非常感谢。

最佳答案

答案是修改drawNode功能如下:

function drawNode(d) {
  context.moveTo(d.x + 3, d.y);
  context.arc(d.x, d.y, 5, 0, 2 * Math.PI);
  context.fillText(d.name, d.x+10, d.y+3);
}
context.fillText()允许在 Canvas 上添加文本。

关于d3.js - d3js (v4) Canvas 强制布局在节点上带有文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39076332/

相关文章:

javascript - 使用 D3.js 限制 SVG 中文本元素的宽度

javascript - d3.js nice() ticks 背后的逻辑是什么

javascript - 如何加载 CSV 和 JSON 文件并使用 d3.json、d3.csv 和 d3.zip 将两个数据集合并为一个数据集

javascript - d3 力有向图向下力模拟

javascript - 如何配置 d3-cloud 以在 Angular2 中拥有链接?

javascript - 如何操作现有 SVG 中元素的图层?

javascript - d3 将力导向树布局制作成圆形

javascript - 如何在 d3 的力布局图中获得相同的节点位置

d3.js - 如何增加D3力布局中链接的长度

javascript - 使用带有 D3 力布局图的下拉菜单