我试图在圆形布局中绘制一个图形。我给节点的 x 和 y 位置如下 X=Math.cos(Math.PI*(u)/l)*R
Y=数学.sin(数学.PI*(u)/l)*R
其中 u 是增量器,l 是节点数,R 是半径。方程似乎是正确的。问题是图形向左侧倾斜。
对于一个简单的图形也(对于两个节点)边缘不在水平位置,我认为 x 和 y 的位置在其他一些函数调用(sigma 库)中发生了变化
谁能在这方面帮助我
我试图在圆形布局中绘制一个图形。我给节点的 x 和 y 位置如下 X=Math.cos(Math.PI*(u)/l)*R
Y=数学.sin(数学.PI*(u)/l)*R
其中 u 是增量器,l 是节点数,R 是半径。方程似乎是正确的。问题是图形向左侧倾斜。
对于一个简单的图形也(对于两个节点)边缘不在水平位置,我认为 x 和 y 的位置在其他一些函数调用(sigma 库)中发生了变化
谁能在这方面帮助我
在 sigma.js 的 animate.html 示例中,有一个“圆图”示例。
正确的公式是:
circular_x: L * Math.cos(Math.PI * 2 * i / N ),
circular_y: L * Math.sin(Math.PI * 2 * i / N ),
在哪里
如果我使用此代码,并生成两个节点的图,边是水平的。
我用的是 sigma v1.0.3
我遇到了类似的问题,但@logisima 的回答并没有解决我的问题。
有时,此问题可能是节点密钥的结果。一个图节点应该有唯一的键。
确保您的密钥是唯一的
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,
}]