2014-07-07 82 views
1

如何显示Jsnetworkx中的边缘属性?如何更改jsnetworkx边缘颜色

我希望能够改变边缘颜色和箭头样式结束(一些边是箭头和一些T的(喜欢的东西:http://upload.wikimedia.org/wikipedia/commons/d/dc/DG_Network_in_Hybrid_Rice.png

我试图适应的一个例子:

http://jsfiddle.net/3J3k4/

var G = jsnx.DiGraph(); 

G.add_nodes_from([1,2,3,4,5,[9,{color: '#008A00'}]], {color: '#0064C7'}); 
G.add_cycle([1,2,3,4,5]); 
G.add_edges_from([[1,9,{color: '#008A00'}], [9,1]]); 

jsnx.draw(G, { 
    element: '#canvas', 
    with_labels: true, 
    node_style: { 
     fill: function(d) { 
      return d.data.color; 
     } 
    }, 
    label_style: {fill: 'white' }, 
    edge_style: { 
     fill: 'red' 
    } 
}); 

回答

3

@ user27815,要添加edge_style属性中,我使用的功能下面

代码段中给出。
var G = jsnx.DiGraph(); 
G.add_nodes_from([1,2,3,4,5,[9,{color: '#008A00'}]], {color: '#0064C7'}); 
G.add_cycle([1,2,3,4,5]); 
G.add_edges_from([[1,9,{color: '#008A00'}], [9,1]]); 
jsnx.draw(G, { 
    element: '#canvas', 
    with_labels: true, 
    node_style: { 
    fill: function(d) { 
     return d.data.color; 
    } 
    }, 
    label_style: {fill: 'white' }, 
    edge_style: { 
    'stroke': function(d) { 
      return d.data.color|| '#AAA'; 
      }, 
    'stroke-width': 2 
    } 
}); 

您可以参考JSFIDDLE

0

使用下面的代码的方法jsnx.draw(G, {内:

edgeStyle: { 
    'stroke-width': 15, 
    fill: '#999' 
},