可以为力导向布局指定自定义力函数吗?

kjo*_*kjo 5 graph-layout d3.js

我想尝试使用替代族力函数来实现力导向图形布局。

对于每个节点n_i,我可以定义一个“力函数”,f_i这样

  • f_i ( n_i )同样为零;和
  • f_i ( n_j ),其中, 是由于其他节点而施加n_i != n_j在节点上的力。n_in_j

节点上的净力n_i应为力的矢量和f_i ( n_j ),其中n_j范围涵盖所有其他节点1

有没有办法告诉 d3.js在布局算法中使用这些自定义强制函数?

[ d3.js 的力导向布局的文档描述了可以调整其内置力函数的各种方法,但我无法找到一种方法来完全指定完全不同的力函数,即力函数无法通过调整内置力函数的参数来实现。]


1n_i IOW,除了根据其力函数计算的力之外,不应有其他/额外的力作用于节点f_i

Lar*_*off 2

为此,您需要创建自己的自定义布局。据我所知,没有这方面的教程,但现有强制布局的源代码应该是一个很好的起点,因为从听起来来看,自定义布局的结构将与此非常相似。