Más contenido relacionado Similar a どんなデータでもキレイに魅せる! 〜HTML5/JavaScriptでグラフを描画する今時の手法〜 (20) Más de Hideyuki Takeuchi (7) どんなデータでもキレイに魅せる! 〜HTML5/JavaScriptでグラフを描画する今時の手法〜15. ブラウザ上でのデータ可視化
The Wealth & Health of Nations
http://bost.ocks.org/mike/nations/
Four Ways to Slice Obama’s 2013 Budget Proposal
http://www.nytimes.com/interactive/2012/02/13/us/politics/2013-budget-proposal-graphic.html
The Facebook Offering: How It Compares
http://www.nytimes.com/interactive/2012/05/17/business/dealbook/how-the-facebook-offering-
compares.html
dc.js
http://dc-js.github.io/dc.js/
15
24. D3.jsについて
● Data Driven Document の略
● データビジュアライズを作るのに必要なものを
集めたライブラリ
● ビジュアライズそのものを提供しているものではない
● Mike Bostock 作
○ 今はThe New York Timesで
グラフィックエディターをしている
● http://bost.ocks.org/mike/
24
25. D3.jsの良いところ
● とにかくサンプルが多い
● d3.js Gallery (https://github.
com/mbostock/d3/wiki/Gallery)
● bl.ocks.org
(http://bl.ocks.org/)
○ Gistに上がっているデータ可視化表現を描画してく
れるサイト
● Mike Bostock のものを見るだけでもお
なかいっぱい(849個)
(http://bl.ocks.org/mbostock)
25
28. SVG: Smart Vector Graphics
XMLをベースにした2次元ベクター画像フォーマット
最近のブラウザがサポート: IE9以上, Firefox, Chrome
28
<svg width="120" height="120">
<rect x="10" y="10" width="100" height="100"rx="15" ry="15" />
</svg>
基本D3.jsはSVG DOM Nodeを
いじって最終的な画像を作り出す
29. SVG + CSS
29
rect {
fill: #fcc;
stroke: black;
stroke-width: 5px;
}
<svg width="120" height="120">
<rect x="10" y="10" width="100" height="100"rx="15" ry="15" />
</svg>
32. .enter() と .exit()
.enter()
● selectAll()で取り出したDOM要素より紐付けられたデータが多ければ、その差
分の個数だけ空の箱を作成し返す
● 普通はその箱に対して.append()で要素を追加
● 必要になったDOM要素をフェードインや画面外からのアニメーションで追加出来
る
.exit()
● .enter()の逆でDOMが多い分だけそのDOM要素を返す
● いらなくなったDOM要素をフェードアウトさせつつ消したり出来る
32
44. OSSプロジェクト「E2D3」
E2D3: Excel to D3.js http://e2d3.org/
GitHub: https://github.com/e2d3/e2d3/
Officeストア にて配信中
Excel2013以上 もしくは ブラウザのOffice365上で動作
現在絶賛開発中
求むコントリビュータ—!
44
48. E2D3の仕組み
Excel2013 および Office365 には、
HTMLとJavaScriptで作られたアプリを
追加する機能があるのでそれを利用
Apps for Office
https://msdn.microsoft.com/JA-JP/library/office/jj220060.aspx
JavaScript API for Office
https://msdn.microsoft.com/ja-jp/library/office/fp142185.aspx
48