
- D3.js 教程
- D3.js - 首頁
- D3.js - 簡介
- D3.js - 安裝
- D3.js - 概念
- D3.js - 選擇集
- D3.js - 資料連線
- D3.js - SVG 簡介
- D3.js - SVG 變換
- D3.js - 過渡
- D3.js - 動畫
- D3.js - 繪製圖表
- D3.js - 圖表
- D3.js - 地理資料
- D3.js - 陣列API
- D3.js - 集合API
- D3.js - 選擇集API
- D3.js - 路徑API
- D3.js - 比例尺API
- D3.js - 軸API
- D3.js - 形狀API
- D3.js - 顏色API
- D3.js - 過渡API
- D3.js - 拖拽API
- D3.js - 縮放API
- D3.js - 請求API
- 分隔符分隔值 API
- D3.js - 定時器API
- D3.js - 例項
- D3.js 有用資源
- D3.js - 快速指南
- D3.js - 有用資源
- D3.js - 討論
D3.js - 過渡API
D3 過渡會獲取元素選擇集,併為每個元素應用過渡到元素當前定義的一部分。
配置 API
您可以使用以下指令碼配置過渡 API。
<script src = "https://d3js.org/d3-color.v1.min.js"></script> <script src = "https://d3js.org/d3-dispatch.v1.min.js"></script> <script src = "https://d3js.org/d3-ease.v1.min.js"></script> <script src = "https://d3js.org/d3-interpolate.v1.min.js"></script> <script src = "https://d3js.org/d3-selection.v1.min.js"></script> <script src = "https://d3js.org/d3-timer.v1.min.js"></script> <script src = "https://d3js.org/d3-transition.v1.min.js"></script> <script> </script>
過渡 API 方法
讓我們詳細瞭解過渡 API 方法。
選擇元素
讓我們詳細討論各種選擇元素。
selection.transition([name]) − 此方法用於返回一個帶有名稱的新選擇過渡。如果未指定名稱,則返回 null。
selection.interrupt([name]) − 此方法用於中斷具有指定名稱的選擇元素的過渡,定義如下。
selection.interrupt().selectAll("*").interrupt();
d3.interrupt(node[, name]) − 此方法用於中斷指定節點上指定名稱的過渡。
d3.transition([name]) − 此方法用於返回一個具有指定名稱的新過渡。
transition.select(selector) − 此方法用於選擇與指定選擇器匹配的第一個元素,並返回對結果選擇集的過渡,定義如下。
transition .selection() .select(selector) .transition(transition)
transition.selectAll(selector) − 此方法用於選擇與指定選擇器匹配的所有元素,並返回對結果選擇集的過渡。定義如下:
transition .selection() .selectAll(selector) .transition(transition)
transition.filter(filter) − 此方法用於選擇與指定過濾器匹配的元素,定義如下。
transition .selection() .filter(filter) .transition(transition)
transition.merge(other) − 此方法用於將過渡與其他過渡合併。定義如下。
transition .selection() .merge(other.selection()) .transition(transition)
transition.transition() − 此方法用於在所選元素上返回一個新的過渡。它計劃在當前過渡停止時開始。新的過渡繼承此過渡的名稱、持續時間和緩動。
示例 − 讓我們考慮以下示例。
d3.selectAll(".body") .transition() // fade to yellow. .style("fill", "yellow") .transition() // Wait for five second. Then change blue, and remove. .delay(5000) .style("fill", "blue") .remove();
這裡,主體淡化為黃色,並在最後一個過渡開始前五秒鐘啟動。
d3.active(node[, name]) − 此方法用於返回指定節點上具有指定名稱的過渡。
時間方法
讓我們詳細瞭解過渡時間 API 方法。
transition.delay([value]) − 此方法用於將過渡延遲設定為指定值。如果為每個選定元素計算函式,則將其傳遞給當前資料“d”和索引“i”,上下文為當前 DOM 元素。如果未指定值,則返回過渡中第一個(非空)元素的延遲的當前值。定義如下:
transition.delay(function(d, i) { return i * 10; });
transition.duration([value]) − 此方法用於將過渡持續時間設定為指定值。如果未指定值,則返回過渡中第一個(非空)元素的持續時間的當前值。
transition.ease([value]) − 此方法用於調整所選元素的過渡值。緩動函式在動畫的每一幀中被呼叫,並傳遞範圍在 [0, 1] 內的標準化時間“t”。如果未指定值,則返回過渡中第一個(非空)元素的當前緩動函式。
在下一章中,我們將討論 d3.js 中的拖放概念。