2012-01-26 3 views
33

Sto avviando un nuovo progetto utilizzando HTML5. Due dei più famosi kit di strumenti grafici sono KineticJS e RaphaelJS. Se hai esperienza nell'usarli, hai qualche consiglio? Quali caratteristiche offrono, e c'è un vantaggio nell'usare l'una sull'altra?Kineticjs vs Raphaeljs

E.g. solo RaphaelJS funziona su browser legacy (ma questo non è una funzione richiesta).

+0

Devi essere più specifico su quale tipo di progetto stai facendo, diverse tecniche soddisfano esigenze diverse. – bennedich

+1

@bennedich Ho solo bisogno di sapere quali sono le differenze nelle possibilità di entrambi. –

+1

Nota che l'autore di RaphaelJS ha anche creato SnapSVG: http://snapsvg.io/ che è più adatto per i browser moderni. –

risposta

52

La più grande differenza tra RaphaelJS e KineticJS è che RaphaelJS utilizza SVG e KineticJS utilizza HTML5 Canvas per la visualizzazione.
Quindi dipende davvero dal tipo di progetto che stai facendo.

Ecco alcuni link utili che si dovrebbe verificare per quanto riguarda SVG vs Tela:

Riassumendo:

  • Se si desidera creare grafici interattivi, io andrei con RaphaelJS perché è più facile farlo con SVG (KineticJS fornisce alcune API astratte che dovrebbero rendere abbastanza facile farlo anche in questo caso).
  • Se si desidera visualizzare un numero enorme di forme/oggetti, consigliamo di utilizzare KineticJS come scale di solito meglio con un numero enorme di forme/oggetti da disegnare e KineticJS utilizza più livelli per migliorare le prestazioni di rendering.
+3

Non sono d'accordo sul fatto che SVG funzioni meglio per i grafici che per il canvas, in realtà. Dai un'occhiata a questa demo: http://meteorcharts.com/ Canvas può gestire centinaia di migliaia di punti dati e rimanere reattivo, anche su dispositivi mobili. SVG semplicemente non può farlo. –

+1

Certo, se hai a che fare con un'enorme quantità di forme/punti da disegnare, che Canvas scala meglio di SVG (vedi i parametri di riferimento nei thread). Ma per grafici interattivi semplici (diagrammi a barre, piecharts, ecc.) SVG è abbastanza veloce e se si utilizza [D3.js] (http://d3js.org/) è possibile creare alcuni grafici interattivi davvero impressionanti con uno sforzo relativamente ridotto. –

+0

SVG o Canvas? Chiusura tra i due. http://dev.opera.com/articles/view/svg-or-canvas-choosing-between-the-two/ – Cherven