弦圖
弦圖配置計算角度以產生 弦圖。
chord()
原始碼 · 建立一個具有預設設定的新弦圖配置。
const chord = d3.chord();
chord(matrix)
原始碼 · 計算指定大小為 n×n 的正方形 matrix 的弦圖配置,其中 matrix 表示 n 個節點的網路(一個完全有向圖)之間的定向流。
chord(matrix) 的回傳值是一個 chords 陣列,其中每個和弦代表兩個節點 i 和 j (其中 i 可能等於 j) 之間的雙向流動,並是一個具有下列屬性的物件
source
- 來源子群組target
- 目標子群組
每個來源和目標子群組也是一個具有下列屬性的物件
startAngle
- 以弧度為單位的起始角度endAngle
- 以弧度為單位的結束角度value
- 流動值 matrix[i][j]index
- 節點索引 i
和弦通常傳遞給 ribbon 以顯示網路關係。
傳回的陣列僅包含值 matrix[i][j] 或 matrix[j][i] 為非零的和弦物件。此外,傳回的陣列僅包含唯一的和弦:給定的和弦 ij 代表從 i 到 j 和 從 j 到 i 的雙向流動,且不包含重複的和弦 ji;i 和 j 的選擇方式是和弦的來源始終代表 matrix[i][j] 和 matrix[j][i] 中較大的值。
chords 陣列也定義了一個長度為 n 的次要陣列,chords.groups,其中每個群組代表節點 i 的合併流出,對應於元素 matrix[i][0 … n - 1],並是一個具有下列屬性的物件
startAngle
- 以弧度為單位的起始角度endAngle
- 以弧度為單位的結束角度value
- 節點 i 的總流出值index
- 節點索引 i
群組通常傳遞給 arc 以在和弦配置的周長周圍產生甜甜圈圖。
chord.padAngle(angle)
來源 · 如果指定 angle,則將相鄰群組之間的填充角度設定為弧度中的指定數字,並傳回此和弦配置。如果未指定 angle,則傳回目前的填充角度,預設為零。
chord.sortGroups(compare)
來源 · 如果指定 compare,則將群組比較器設定為指定的函式或 null,並傳回此和弦配置。如果未指定 compare,則傳回目前的群組比較器,預設為 null。如果群組比較器為非 null,則用於依其總流出量對群組進行排序。另請參閱 ascending 和 descending。
chord.sortSubgroups(compare)
原始碼 · 如果指定了 compare,則將子群組比較器設定為指定的函式或 null,並傳回此弦圖配置。如果未指定 compare,則傳回目前的子群組比較器,其預設為 null。如果子群組比較器非 null,則會用來根據給定群組 i 的總流出量,對應於 matrix[i][0 … n - 1] 的子群組進行排序。另請參閱 ascending 和 descending。
chord.sortChords(compare)
原始碼 · 如果指定了 compare,則將弦比較器設定為指定的函式或 null,並傳回此弦圖配置。如果未指定 compare,則傳回目前的弦比較器,其預設為 null。如果弦比較器非 null,則會用來根據 弦 的組合流進行排序;這只會影響弦的 z 順序。另請參閱 ascending 和 descending。
chordDirected()
範例 · 原始碼 · 一個用於單向流的弦圖配置。從 i 到 j 的弦僅從 matrix[i][j] 中的值產生。
chordTranspose()
原始碼 · 一個轉置的弦圖配置。對於突顯流出(而非流入)很有用。