2016-05-16 25 views
0

Ich bin mit dem Python Bibliothek networkx erstellen einen gerichteten Graphen mit fast 2k Knoten verwendet wird, und ich möchteVisualize NetworkX vis.js

die Grafik mit vis.js Bibliothek zur Visualisierung

Ich weiß, wie es als Json zu exportieren, aber ich bin nicht in der Lage ein kompatibles Format zu erzeugen, sie in vis.js direkt verwenden

ich sollte einen jSON-String ausgegeben haben, die wie folgt aussieht:

Knoten:

[ 
    {id: 1, label: 'a'}, 
    {id: 2, label: 'b'}, 
    {id: 3, label: 'c'} 
] 

Kanten:

[ 
    {from: 1, to: 2, label: 'label1'}, 
    {from: 1, to: 3, label: 'label2'}, 
    {from: 2, to: 4, label: 'label3'}, 
    {from: 2, to: 5, label: 'label3'} 
] 

Antwort

1

Ich bin nicht vertraut mit viz.js aber wenn es ich vorschlagen, dass Sie Ihr Diagramm, um GEXF keine harte Anforderung ist exportieren:

G = nx.path_graph(4) # your graph here 
nx.write_gexf(G, "test.gexf") 
es

und importieren Sie dann in Sigma.js, eine dedizierte Hochleistungsgrafik-Zeichnungsbibliothek mit the dedicated GEXF importer plugin.

+0

Ich habe 'sigma.js' versucht, aber es zeigt keine Knotenattribute, also ist das nicht nützlich für meinen Anwendungsfall, weil mein Graph in ID und eine Liste von Attributen hat, die im Hover –

+1

Of angezeigt werden müssen Natürlich können Sie Attribute in Hover in Sigma anzeigen. Überprüfen Sie dieses Beispiel https://github.com/jacomyal/sigma.js/blob/master/examples/events.html – Kikohs

0

Es gibt einen Port zu Jupyter von visJS. Sie können es finden here.

Das Paket ist in Python 2, aber die Portierung auf hat begonnen.

Bitte beachten Sie, dass, wie erwähnt, es funktioniert nur mit Jupyter (was toll ist, wenn Sie mich fragen!).