D3 是客製化的圖表加上動態的生動的圖表,讓人更賞心稅目,但也聽說入手不易,常常搞不懂有哪些API 可以使用,官方文件有些難閱讀等等,線上總是有很多高手有提供範利,其中我也是以新手的身份來掀開d3這神祕的面紗吧! 參考範例來源
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/d3/3.5.17/d3.js"></script>
<div id="content">
<svg class="svg"></svg>
</div>
三、 資料收集 (要用json格式,才可以用在d3的圖表上)
四、 宣告svg 畫布的大小範圍
使用 translate 可以讓圖形在 x 軸或 y 軸進行位移 ( 中括號為不是必須的值 ),所謂的位移是指原本的坐標加上多少。
linear 意即會有等比例的縮放大小
.domain 輸入的資料來源 (0, N)
.range 輸出的資料範圍(0,N)
白話文的意思~ 如果你的資料來源介於(0,990) , 但輸出的數值範圍(0,100), d3的函數就會自動把值等比例的縮小至(0~100)的區間喔
Asix : 繪製刻線
.scale 比例尺
.orient
畫線的位置 (top bottom
left rieght )
.ticks
刻度的數量
.tickFormat : 設定資料格式 / 顯示刻度
新增的dom元件,將圖表繪製上畫面上
scale.category10 產生隨機10種顏色
selectAll 選擇dom元素 (像css語法)
data 輸入資料來源
enter 找出不夠資料塞入的元素筆數,再透過 append()
函式新增元素
append 加上長方條(rect)
classed 客製化的css 或傳入值控制css