1. ホーム
  2. javascript

[解決済み] d3.jsとchart.jsの比較(チャートのみ)【終了しました

2023-02-07 14:38:03

質問

私は自分のプロジェクトで何度かchart.jsを使ったことがありますが、d3.jsは使ったことがありません。多くの人がd3.jsはチャートのための最高のjavascriptフレームワークだと言いますが、特に私がchart.jsと比較したいとき、彼らの誰も理由を説明することができません。

私はこれを見つけました。 http://www.fusioncharts.com/javascript-charting-comparison/ しかし、それは私が探していたものではありません。

どなたか、これらのフレームワークの使い勝手やパフォーマンス(グラフのみ)の比較についてご存知の方はいらっしゃいませんか?

どのように解決するのですか?

d3.js は、チャート作成ライブラリではありません。 SVG/HTML を作成し、操作するためのライブラリです。 データを視覚化し、操作するのに役立つツールを提供します。 従来のチャート(棒グラフ、折れ線グラフ、円グラフなど)を作成することができますが、それ以上のことが可能です。 もちろん、この「多くのことができる」ということは、学習曲線が急であることを意味します。 従来のチャート作成ライブラリの多くは d3.js - nvd3.js , dimple.js , dc.js といった具合です。

には詳しくないのですが Chart.js についてはよく知らないのですが、ウェブサイトをざっと見たところでは、ありふれたチャート・ライブラリという感じです。 6 種類の基本的なグラフをサポートしており、そのうちの 1 つである スタッフ のように この それ . しかし はAPIが分かりやすそうだし、きっと使いやすいんでしょうね。

それ以外では、この2つの最も明白な違いは Chart.js がキャンバスベースであるのに対し d3.js は主に SVG についてです。 (今、私が言う 主に というのは d3.js はあらゆる種類のHTML要素を操作できるため を使うこともできます。 を使用して、canvas に描画することもできます)。 一般に、canvas は多数の要素(非常に大規模なもの、つまり何千もの点、線など...)に対して SVG よりも性能が優れています。 一方、SVGは操作や対話が簡単です。 SVGでは、それぞれの点、線、その他がDOMの一部となります。 キャンバスの場合は、静的な描画なので、変更するには再描画が必要です。もちろん、描画速度が速いので、通常は気づかないでしょう。 以下は を読んでみてください。 をご覧ください。