コード
コードレイアウトは、コード図を生成するための角度を計算します。
chord()
ソース · デフォルト設定で新しいコードレイアウトを構築します。
const chord = d3.chord();
chord(matrix)
ソース · 指定されたサイズの正方行列*matrix*のコードレイアウトを計算します。ここで、*matrix*は*n*個のノードのネットワーク(完全有向グラフ)間の有向フローを表します。
chord(matrix)の戻り値は*chords*の配列です。各コードは、2つのノード*i*と*j*(*i*は*j*と等しい場合がある)間の双方向フローの組み合わせを表し、次のプロパティを持つオブジェクトです。
source
- ソースサブグループtarget
- ターゲットサブグループ
各ソースおよびターゲットサブグループも、次のプロパティを持つオブジェクトです。
startAngle
- ラジアン単位の開始角度endAngle
- ラジアン単位の終了角度value
- フロー値 *matrix*[ *i* ][ *j* ]index
- ノードインデックス*i*
コードは通常、ネットワークの関係を表示するためにリボンに渡されます。
返される配列には、値 *matrix*[ *i* ][ *j* ]または *matrix*[ *j* ][ *i* ]がゼロでないコードオブジェクトのみが含まれます。さらに、返される配列には一意のコードのみが含まれます。特定のコード*ij*は、*i*から*j*への双方向フロー*および* *j*から*i*へのフローを表し、重複するコード*ji*は含まれません。コードのソースが常に*matrix*[ *i* ][ *j* ]と*matrix*[ *j* ][ *i* ]の大きい方を表すように*i*と*j*が選択されます。
chords配列は、長さが*n*の2次配列*chords*.groupsも定義します。各グループは、ノード*i*の合計流出に対応し、要素*matrix*[ *i* ][ 0 … *n* - 1 ]に対応し、次のプロパティを持つオブジェクトです。
startAngle
- ラジアン単位の開始角度endAngle
- ラジアン単位の終了角度value
- ノード*i*の合計流出値index
- ノードインデックス*i*
グループは通常、コードレイアウトの円周の周りにドーナツチャートを生成するためにアークに渡されます。
chord.padAngle(angle)
ソース · *angle*が指定されている場合、隣接するグループ間のパッド角度を指定されたラジアン単位の数値に設定し、このコードレイアウトを返します。*angle*が指定されていない場合、現在のパッド角度(デフォルトはゼロ)を返します。
chord.sortGroups(compare)
ソース · *compare*が指定されている場合、グループコンパレータを指定された関数またはnullに設定し、このコードレイアウトを返します。*compare*が指定されていない場合、現在のグループコンパレータ(デフォルトはnull)を返します。グループコンパレータがnull以外の場合、合計流出量でグループをソートするために使用されます。昇順および降順も参照してください。
chord.sortSubgroups(compare)
ソース · *compare*が指定されている場合、サブグループコンパレータを指定された関数またはnullに設定し、このコードレイアウトを返します。*compare*が指定されていない場合、現在のサブグループコンパレータ(デフォルトはnull)を返します。サブグループコンパレータがnull以外の場合、特定のグループ*i*の*matrix*[ *i* ][ 0 … *n* - 1 ]に対応するサブグループを、合計流出量でソートするために使用されます。昇順および降順も参照してください。
chord.sortChords(compare)
ソース · *compare*が指定されている場合、コードコンパレータを指定された関数またはnullに設定し、このコードレイアウトを返します。*compare*が指定されていない場合、現在のコードコンパレータ(デフォルトはnull)を返します。コードコンパレータがnull以外の場合、コードをその結合フローでソートするために使用されます。これはコードの*z*-順序にのみ影響します。昇順および降順も参照してください。
chordDirected()
例 · ソース · 単方向フローのコードレイアウト。*i*から*j*へのコードは、*matrix*[ *i* ][ *j* ]の値のみから生成されます。
chordTranspose()
ソース · 転置されたコードレイアウト。流入フローではなく、流出フローを強調するのに役立ちます。