sigma.js 未读取节点外观设置

Node appearance settings not read by sigma.js

//Settings for sigma instance (WebGL on latest Chrome)
var settings={
    defaultNodeColor: "#5FBA7D",
    nodeHoverColor: "default",
    defaultNodeHoverColor: "#F69C55" 
}

正常的节点颜色在我的图表中显示正常,但是当鼠标悬停在节点上时,颜色没有改变。有什么建议吗?

我不得不遍历所有节点并手动设置。首先你必须保存原始节点颜色:

var s = new sigma({ 
  graph: graphData, //json data
  renderer: {
    container: 'graph-container',
    type: 'canvas'
  }
});

//save initial node colors
s.graph.nodes().forEach(function(n) { 
  n.originalColor = n.color;
});
s.refresh();

//set hover node color
s.bind('overNode', function(e) {
  s.graph.nodes().forEach(function(n) { 
    if (n.id == e.data.node.id){ 
      n.color = settings('defaultNodeHoverColor'),
    }
  }); 
  s.refresh();
});

//set default node color
s.bind('outNode', function(e) {
  s.graph.nodes().forEach(function(n) { 
    if (n.id == e.data.node.id){ 
      n.color = n.originalColor;
    }
  });
  s.refresh();
});