0
我有點難以理解sigma.js如何處理節點和邊的大小。在sgma.js中將節點的大小增加一倍大小
我得知您在圖表設置中設置了minNodeSize
和maxNodesSize
。然後根據節點的個人大小以及圖形的縮放級別分配實際顯示大小。正確?
我想要實現的是一個節點在mouseOver上將其大小加倍,並在mouseOut上縮回到原始大小。這裏是我的代碼:
var minNodeSize = 1;
var maxNodeSize = 5;
sigma.parsers.json('giantComponent.json', {
container: 'graph',
settings: {
minNodeSize: minNodeSize,
maxNodeSize: maxNodeSize
}
//Assign same size to all nodes
var s = sigma.instances()[0];
var nodes = s.graph.nodes();
nodes.forEach(function (n) {
n.size= maxNodeSize/2;
})
}
);
//Function to change a nodes size on mouseOVer
function interactiveNodes() {
var s = sigma.instances()[0];
var nodes = s.graph.nodes();
s.bind('overNode', function (d) {
d.data.node.size = maxNodeSize;
s.refresh();
})
s.bind('outNode', function (d) {
d.data.node.size = maxNodeSize/2;
s.refresh();
})
}
結果:當我將鼠標懸停在該節點保持相同的大小,而所有其他節點縮小到一半大小的節點上。
任何想法?
是的確的,我設法解決它通過這個'autoRescale:['nodePosition','edgeSize']'... [信貸Yomguithereal](https://github.com/jacomyal/sigma.js/問題/ 774) – Fede9390