d3.js - 记录聚合 D3 力布局中节点的 x、y 坐标

标签 d3.js force-layout

我有一个包含大约 600 个节点的图表。一段时间后,d3.layout.force() 收敛。如何显示节点的 (x,y) 坐标,以便我可以将它们存储为数据并将它们用作缓存布局,如 this answer 中所述?答案可能很简单,因为我是 javascript 的新手。

最佳答案

力布局收敛后,可以遍历节点列表获取当前坐标:

var force = d3.layout.force().nodes(nodes);

// after convergence
var positions = nodes.map(function(d) { return [d.x, d.y]; });

这里假设你的浏览器支持map,如果不支持请看here .

您当然可以在每次报价时运行它并每次都保存结果;这让您无需弄清楚布局何时收敛。

关于d3.js - 记录聚合 D3 力布局中节点的 x、y 坐标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16402151/

相关文章:

javascript - 在同一元素上实现 shift click 和 click 功能

javascript - 如何设置 D3 Zoom Packed Circle children 的颜色

d3.js - 仅修复力布局中节点的一个维度?

javascript - 如何消除d3js中圆圈的重叠?

d3.js - 您如何根据链接和节点数自定义 d3 链接强度? (d3 v4)

javascript - 如何使用 d3+ react ?

javascript - 引用错误: barChartHelper is not defined?

javascript - D3 力定向图 - 删除节点

javascript - 如何编辑节点图?

javascript - d3.js 线图轴不会达到最高数字