2012-05-14 17 views
19

Esiste una libreria Canvas simile a d3.js (è una libreria svg). Ho un sito web here e ho codificato un grafico con elementi svg, tuttavia non è efficiente sui browser di smart phone e funziona in modo lento. Ora, voglio cambiarlo con un tipo di tela 2D e vedere se è migliore o meno. Puoi suggerire una libreria di canvas utile per questo scopo?Alternative canvas HTML5 per d3.js, libreria di visualizzazione grafica

Grazie ...

risposta

6

Per la Samsung Olympic Genome Project facebook app, abbiamo usato http://thejit.org per fare la forza diretta di animazione stile del grafico per l'applicazione. È pesantemente modificato da me e da altri sul mio team, ovviamente, e suona solo una piccola parte nell'app, ma è una struttura abbastanza potente.

+0

qual è la compatibilità per questa libreria? – dax

23

D3 non è necessariamente solo una libreria svg: in molti casi viene utilizzato svg, ma la libreria può eseguire qualsiasi tipo di rappresentazione che si desidera eseguire. Vedere questo esempio di coordinate parallele utilizzando tela in D3, di Kai Chang: http://bl.ocks.org/2409451

vedi qui per un po 'di discussione sui problemi di prestazioni, ecc, che potrebbe essere utile anche: https://groups.google.com/d/topic/d3-js/mtlTsGCULVQ/discussion

+0

esiste un confronto delle prestazioni tra SVG e CANVAS? sembra che la tela sia molto meglio ma non ci sono molte librerie centric per la visualizzazione dei dati come la D3 per lo svg –

+2

@ V3ss0n: per un confronto tra SVG e canvas, dai un'occhiata al confronto fornito su [OpenLayers website] (http: // trac.osgeo.org/openlayers/wiki/Future/OpenLayersWithCanvas). – amergin

+1

@ V3ss0n: vedere http://citeseerx.ist.psu.edu/viewdoc/download?rep=rep1&type=pdf&doi=10.1.1.141.7632 –

4

Date un'occhiata a Cytoscape.JS che utilizza un Canvas HTML5 per il rendering. Al momento della stesura di questo è nella sua infanzia, ma il progetto sembra promettente. Secondo il suo wiki biblioteca supporta sia desktop e browser mobili:

Cytoscape.js è facilmente integrabile nel vostro webapp, soprattutto perché Cytoscape.js supporta entrambi i browser desktop, come Chrome, e telefoni browser, come su l'iPad.

+0

Uso piacevole di vari livelli canvas per ottimizzare i ritocchi delle interazioni dell'utente! Impressionato. –

+0

Amico, grazie mille per averlo menzionato. Ho passato un intero mucchio di librerie JS oggi, inclusi D3, JIT, Arbor, Sigma e quant'altro, e sono tutti o pazzi (D3) o totalmente inflessibili (JIT, ...). Sembra che potrebbe salvare la mia giornata. – kralyk

4

Chart.js è una libreria javascript appena uscita che crea grafici utilizzando HTML5 per il rendering. Non è una funzionalità inclusiva come D3, ma sta funzionando per diventare esattamente così in futuro. http://www.chartjs.org/