2013-09-26 14 views
10

Che cos'è una buona libreria JavaScript per la visualizzazione di grafici/reti in continua evoluzione/dinamici?Libreria JavaScript per la visualizzazione dinamica della rete?

miei dati è in forma di source -> destination at time triple come la seguente

A -> B at 100 
B -> C at 101 
A -> D at 104 
C -> D at 105 
... 

Sullo schermo desidero vedere un'animazione di punti collegati da bordi con bordi sfarfallio on e off come tempo evolve.

Sono anche felice di contribuire a una libreria open source che è quasi lì.

Chiarificazioni:

+0

Date un'occhiata a [d3.js] (http://d3js.org/) ci sono alcune belle [esempi] (http://bost.ocks.org/mike/fisheye/) di persone che disegnano reti e grafici. – ggovan

risposta

5

Ho lavorato con Sigma.js, che è una libreria open source esattamente allo scopo di disegnare grafici di rete. È basato su Canvas, quindi più veloce di SVG soprattutto per reti di grandi dimensioni, ma la manipolazione dinamica di nodi/spigoli non è così semplice. Una bella caratteristica è che puoi rendere i file Gexf, creati con Gephi o altri strumenti, con pochissimo sforzo.

+0

Quanto lavoro ci vuole per rendere più semplice la manipolazione dinamica di nodi/spigoli? Sono disposto a contribuire se è vicino. – MRocklin

+0

È difficile rispondere, puoi dare un'occhiata alla [API pubblica qui] (https://github.com/jacomyal/sigma.js/blob/master/src/core/sigmapublic.js), forse già offeers quello che ti serve. – ramiro

+1

Una volta ho esposto il metodo drawEdge all'API pubblica, sono riuscito a creare visualizzazioni grafiche ad alta velocità con sigmajs. – MRocklin

3

Date un'occhiata a d3.js: "d3.js è una libreria JavaScript per la manipolazione di documenti sulla base di dati" http://d3js.org/

He re un esempio di disegno di un grafico da un set di dati: http://bl.ocks.org/mbostock/1153292

Ecco un esempio che mostra come aggiornare dinamicamente i dati. Si può eseguire lo streaming da un server o simularlo passando i dati interamente sul lato client: http://mbostock.github.io/d3/tutorial/bar-2.html

+0

Per ulteriore riferimento, ho creato diversi grafici in d3js. http://vida.io/documents/SyT7DREdQmGSpsBkK (grafico con distanza) e http://vida.io/documents/fGzpzjP98Bs2ShMHW (grafico statico) –

+0

D3.js GEXF loader: [https://github.com/emeeks/ gexfd3] (https://github.com/emeeks/gexfd3). Esempi: [http://bl.ocks.org/emeeks](http://bl.ocks.org/emeeks). (Cerca la pagina per "gexf".) – Mars

5

Vis.js, una libreria di visualizzazione basata su browser, è un'altra opzione per voi. Inoltre, il loro public repo è attivo.

+0

Per favore, prova a leggere questo http://stackoverflow.com/help/deleted-answers, per capire meglio come ** non ** rispondere. Vale a dire: "Risposte che fondamentalmente non rispondono alla domanda": ** appena più di un collegamento a un sito esterno ** –

+0

Vis.js può fare frecce e etichette sui bordi, quindi è perfetto per i grafici ponderati diretti in javascript – lcmgcd

0

Date un'occhiata a questo esempio per ZoomCharts:

enter image description here]

Sembra che questo è esattamente quello che stai cercando.


Disclosure: Io sono co-proprietario e sviluppatore di base in ZoomCharts.com

Problemi correlati