はじめまして。小野寺と申します。
簡単なデータ集計をする機会があり、折角なので表ではなくチャートにしてしまおうと思いまして、C3.jsというチャートライブラリを使ってみました。
C3.jsとは
C3.jsはD3.jsをベースに作られたチャート作成に特化したライブラリです。
D3.jsについてはこちら(D3.jsでデータを魅せる!)をご覧ください。
D3.jsでもチャートの作成は可能なのですが、ちょっとチャートを作りたい場合には少々手間がかかってしまいます。C3.jsはサクッと使えるのが魅力です。それでは見てみましょう。
使い方
C3.jsダウンロードします。
https://github.com/masayuki0812/c3/releases/latest
C3.jsはD3.jsベースなので、D3.jsもダウンロードします。
http://d3js.org/
必要なファイルをhtmlに読み込みます。
| 1 2 3 4 5 | <!-- Load c3.css --> <link href="/path/to/c3.css" rel="stylesheet" type="text/css"> <!-- Load d3.js and c3.js --> <script src="/path/to/d3.v3.min.js" charset="utf-8"></script> <script src="/path/to/c3.min.js"></script> | 
チャート描画にはgenerate()で設定したチャートをbindtoパラメータで指定した要素(例ではdiv#chart)に表示することができるようになっています。
html
| 1 | <div id="chart"></div> | 
js
| 1 2 3 4 5 6 7 8 9 10 | var chart = c3.generate({     bindto: '#chart',     data: {         columns: [             ['data1', 30, 200, 100, 400, 150, 250],             ['data2', 130, 100, 140, 200, 150, 50]         ],         type: 'bar'     } }); | 
たったこれだけで棒チャートが表示されます!
デフォルトで色や軸目盛などが設定されているので(ツールチップまでついています!!)、データを入れてあげるだけできれいなチャートができあがります。

とても簡単ですね。実際に棒チャートを表示するまであっという間でしたね。
typeをbarからlineに変えると、折れ線チャートが表示されます。

他にもpieで円チャートになるのでデータ集計でよく目にするチャートはひと通り作れてしまいます。
groupsパラメータで合計を表示することも可能です。
| 1 2 3 4 5 6 7 8 9 10 11 | var chart = c3.generate({   bindto: '#chart',   data: {      columns: [        ['data1', 30, 200, 100, 400, 150, 250],        ['data2', 130, 100, 140, 200, 150, 50]      ],     type: 'bar',     groups: [['data1', 'data2']]   } }); | 
折れ線とチャートの色やラベル、ツールチップも簡単に設定ができます。
また、データの指定にはCSV, JSON形式をURLで指定することもできるので、APIでデータ提供しているサービスなどでも使用可能です。
| 1 2 3 4 5 | var chart = c3.generate({   data: {     url: '/data/c3_test.csv'   } }); | 
C3の開発者は日本人のMasayuki Tanaka氏で、下記のリンクにはMasayuki氏がC3を開発するに至った経緯などが書かれています。
C3 で始める D3 チャート
最後までお読みいただきましてありがとうございました。
みなさんも一手間加えて、Webページのデータ表にチャートを加えてみてはいかがでしょうか。

 
						
