2012-01-26 6 views
33

私はHTML5を使用して新しいプロジェクトを開始しています。最も一般的なグラフィカルツールキットの2つはKineticJSRaphaelJSです。これらを使用した経験があれば、アドバイスはありますか?彼らはどの機能を提供していますか?KineticjsとRaphaeljs

など。 RaphaelJSのみが従来のブラウザで動作します(しかし、これは私が必要とする機能ではありません)。

+0

あなたはどのようなプロジェクトを行っているのか、より具体的にする必要があります。異なるテクニックはさまざまなニーズに適しています。 – bennedich

+1

@bennedich両者の可能性の違いを知るだけでいいです –

+1

RaphaelJSの著者はSnapSVGを作成しました。http://snapsvg.io/これは最新のブラウザに適しています。 –

答えて

52

RaphaelJSとKineticJSの最大の違いは、RaphaelJSがSVGを使用し、KineticJSがHTML5 Canvasを使用して視覚化することです。
これは本当にあなたがやっているプロジェクトの種類によります。ここで

はあなたがキャンバス対SVGに関するチェックアウトする必要がありますいくつかの有用なリンクです:

  • Thoughts on when to use Canvas and SVG(ハイブリッドアプローチを説明)
  • サイモンSarrisこのstackoverflowのスレッドに優れreply(私はまた、いくつかのbenchmarksを掲載しましたSVGと同じスレッド内のキャンバス)間

は要約する:

  • 私はRaphaelJSを使っていくつもりのインタラクティブなグラフを作成したいのですが、SVGを使う方が簡単だからです(KineticJSは抽象的なAPIを提供しています。
  • 巨大な数の図形/オブジェクトを視覚化したい場合は、KineticJSをキャンバスの尺度として使用することをお勧めします。描写する図形/オブジェクトの数が多いほどよくなり、KineticJSはレンダリングのパフォーマンスを向上させるために複数のレイヤーを使用します。
+3

私は、実際にキャンバスよりもグラフの方がSVGの方がうまく機能していないと私は同意します。このデモを見てみましょう:http://meteorcharts.com/ Canvasは数十万点のデータポイントを処理することができ、携帯端末であっても反応します。 SVGは単にそれを行うことはできません。 –

+1

もちろん、描画するために膨大な量のシェイプ/ポイントを扱わなければならない場合、CanvasはSVGよりも優れたスケーリングをします(スレッドのベンチマークを参照)。 しかし、単純なインタラクティブなチャート(barcharts、piechartsなど)ではSVGが十分に速く、[D3.js](http://d3js.org/)を使用すると、少しの労力で本当に印象的なインタラクティブなチャートを作成できます。 –

+0

SVGまたはCanvas? 2人の間に訴える。 http://dev.opera.com/articles/view/svg-or-canvas-choosing-between-the-two/ – Cherven

関連する問題