3テラバイト

プログラム関連備忘録サイト。主にゲーム。

HTML JavaScript

D3.jsベースのJavaScriptチャートライブラリC3.jsの使い方

投稿日:

公式サイト

https://c3js.org/

サンプルコード

Getting Startedページのサンプルを動かしてみます。
https://c3js.org/gettingstarted.html

<html>
  <head>
    <link href="https://cdnjs.cloudflare.com/ajax/libs/c3/0.7.20/c3.min.css" rel="stylesheet">
    <script src="https://cdnjs.cloudflare.com/ajax/libs/d3/5.16.0/d3.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/c3/0.7.20/c3.min.js"></script>
  </head>
  <body>
    <div id="chart"></div>
    <script>
var chart = c3.generate({
    bindto: '#chart',
    data: {
      columns: [
        ['data1', 30, 200, 100, 400, 150, 250],
        ['data2', 50, 20, 10, 40, 15, 25]
      ]
    }
});
    </script>
  </body>
</html>

必要なjs, cssファイルを読み込み(3~5行目)

ここではライブラリをCDNのcdnjsから読み込みます。
C3.jsのjs, cssファイルのほか、このライブラリはD3.jsベースのため、d3.jsの読み込みも必要です。

ファイルをダウンロードして使用する場合は以下のリンクから最新版のC3.jsのダウンロードが可能です。
https://github.com/c3js/c3/releases/latest

依存関係については、C3.jsのv0.5.0でD3.jsのv4に、C3.jsのv0.6.0でD3.jsのv5に更新されています。

チャートを描画する要素を用意(8行目)

チャートを描画するためのdiv要素を用意、取得するためのIDも設定しておきます。

チャートを生成(10~18行目)

c3.generate関数にチャートの設定値を格納したオブジェクトを渡し、チャートを生成します。

bindtoにはチャートを描画する要素を指定します。
ここではIDがchartの要素に描画するため、’chart’を指定しています。

dataにチャートのデータを設定しています。
columnsに線ごとの値を指定しています。

依存ライブラリ

D3.js
https://d3js.org/

-HTML, JavaScript


comment

メールアドレスが公開されることはありません。

関連記事

no image

JavaScriptチャートライブラリPlotly.jsでチャートを描画する

公式サイト Plotly JavaScript Graphing Library | JavaScript | Plotlyhttps://plotly.com/javascript/ サンプルコード …

no image

JavaScriptで0埋めする方法

こんにちは、今日はJavaScriptで0埋めする方法についてまとめていきます。 0埋め 以下のような関数で第一引数に0埋めしたい数値を、第二引数に数値の桁数を指定すると、指定桁数になるように0埋めさ …

no image

JavaScriptで処理時間を計測する

performance.now関数を用いて処理時間を計測します。計測したい処理の実行前後にperformance.now関数でtime originからの経過時間を取得し、その差を比較します。 DOM …

no image

JavaScriptで配列やオブジェクトの一部を代入する分割代入

JavaScriptで変数に配列やオブジェクトから値を代入する際に、左辺の変数名に角括弧[]を付けることで配列やオブジェクトの一部のみ代入することが可能です。 以下の例では変数aに右辺の配列の内最初の …

no image

動画を埋め込むHTML要素<video>の使い方

動画を埋め込む 以下のようにsrc属性に埋め込みたい動画のURLを指定することで動画を埋め込むことができます。 <video src="movie.mp4"></ …