現在有相當多能用在網頁上的圖表套件,例如易用又美觀的 Chart.js 、提供多樣化視覺圖表的 HighCharts ,以及近期日趨完善的的 Google Charts ,若使用前端框架也有相對應處理好的元件。那麼為什麼我們要使用學習門檻較高的D3?
選擇D3的理由不外乎以下三個:
使用彈性高
D3建置圖表的方式可以說是用一磚一瓦堆疊起來,幾乎每個元素都是你自己裝上去的,自然樣式、使用方式跟呈現上的就能非常客製化,也能吃各種你自己定義的資料格式。D3只提供你一些基礎的api,你能將你的圖表打造成自己心目中的樣子。
龐大社群支援
使用D3的人來自世界各地,人數相當多,網路上的資源非常豐富,官方文件上也有官方與社群的開源Example(https://github.com/d3/d3/wiki/Gallery ),因此即使上手困難,也能從這些開源專案當中找到適合自己的template,不論是在學習或是實際應用上都會有幫助。
數據處理能力
D3除了視覺化以外,其實本身就是一個很強大的處理資料工具,所以即使你沒有要畫華麗的圖表,你也能透過D3處理數據以及渲染網頁。
在理解D3的優點以後,接下來終於能開始動手做囉!