如何在Jsnetworkx中向图添加边标签

时间:2019-04-29 05:48:10

标签: jsnetworkx

我正在研究图形虚拟化项目,并且正在使用JSnetworkx。到目前为止,我已经能够更改边缘宽度和颜色,但是运气为0试图使其显示边缘标签。请帮忙。

var G = new jsnx.DiGraph();

G.addNodesFrom([1,2,3,4,5,[9,{color: '#008A00'}]], {color: '#0064C7'});
G.addCycle([1,2,3,4,5]);
G.addEdgesFrom([[1,9], [9,1]],{label:"edge_1"});

jsnx.draw(G, {
    element: '#canvas', 
    withLabels: true, 
    nodeStyle: {
        fill: function(d) { 
            return d.data.color; 
        }
}, 
edge_style:{
    'stroke-width':5,
    fill: "black"
},
labelStyle: {fill: 'pink'},
stickyDrag: true
});

1 个答案:

答案 0 :(得分:0)

下面是为我工作的原型。

    var G = new jsnx.Graph();
    G.addNodesFrom([
        ['a', { color: 'red' }],
        ['b', { color: 'green' }],
        ['c', { color: 'white' }]
    ]);
    G.addEdgesFrom([
        ['a', 'b', { label: 'a to b label' }],
        ['a', 'c', { label: 'a to c label' }]
    ]);

    jsnx.draw(G, {
        element: '#canvas',
        layoutAttr: {
            friction : 0,
            gravity : 0,
            linkDistance: 400
        },
        withLabels: true,
        withEdgeLabels: true,
        nodeStyle: {
            fill: function (d) {
                return d.data.color;
            }
        },
        edgeLabels: function (d) {
            return d.data.label;
        }
    });