无法修复 sigma js 中的 x 和 y 位置

Not able to fix x and y position in sigma js

我试着画了一个圆形的图 layout.I 给出了节点的 x 和 y 位置如下 X=Math.cos(Math.PI*(u)/l)*R

Y=Math.sin(Math.PI*(u)/l)*R

其中 u 是增量,l 是节点数,R 是半径。 等式似乎是 correct.Problem 是图形向左侧倾斜。

对于一个简单的图也(对于两个节点)边缘不在水平位置, 我认为 x 和 y 的位置在其他一些函数调用中发生了变化(sigma 库)

谁能在这方面帮助我

在animate.html的例子变成了sigma.js,还有一个'circle graph'的例子。

正确的公式是:

circular_x: L * Math.cos(Math.PI * 2 * i / N ),
circular_y: L * Math.sin(Math.PI * 2 * i / N ),

在哪里

  • L : 是
  • 半径 i : 索引 N : 数量
  • r 节点

如果我使用这段代码,并且我生成了两个节点的图形,边缘是水平的。

我用的是 sigma v1.0.3

我遇到了类似的问题,但是@logisima 的回答没有解决我的问题。

有时,此问题可能是节点密钥导致的。 图形节点 应具有唯一键。

Make sure your keys are unique

const allNodes = [{
  key: '1' // UNIQUE,
  name: 'anyname 1',
  label: 'LABEL1',
  x: Math.random() * 2 // LENGTH OF ALL NODES,
  y: Math.random() * 2 // LENGTH OF ALL NODES,
},
{
  key: '2' // UNIQUE,
  name: 'anyname 1',
  label: 'LABEL1',
  x: Math.random() * 2 // LENGTH OF ALL NODES,
  y: Math.random() * 2 // LENGTH OF ALL NODES,
}]