0

現在の状況

以前の質問Data frame into a symmetric matrix while keep all row and columnでは、最終的に対称マトリックスになりました。これを、次のような書式設定されたコード ダイアグラムに変換したいと思います。

library(edgebundleR)

# data
x <- structure(c(1, 1, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0), 
               .Dim = c(3L,5L), 
               .Dimnames = list(c("a.X", "a.Y", "b.Z"), c("a.A", "a.B", "a.C", "b.D", "b.E")))
x <- as.matrix(x)
x <- rbind(cbind(diag(nrow(x)), x), cbind(t(x), diag(ncol(x))))
colnames(x) <- rownames(x)

# plot
edgebundle(x)

# plot with basic formatting using the arguments of edgebundle()
edgebundle(x,
           tension=1,
           fontsize = 12,
           cutoff = 0, 
           width = 1000,
           padding = 230,
           nodesize = c(5, 30))

問題

ただし、edgebundleを使用したコード ダイアグラムのエッジと頂点のカラー化と同様に、さらに一歩進んで、線とノードの色を変更したいと思います (デフォルトおよびマウスオーバー中)。RおよびドキュメントのNetwork chord diagram woes で。

のPDF ドキュメントを読んだ後、edgebundleRこれは現在パッケージの機能の一部ではないと思いますが、...

  • グループに基づくグループ化ラベルを含めるc("a.", "b.")
  • テキストのフォントフェイスを変更する
  • カテゴリが選択されている場合、異なるグループを指す線には異なる色を使用します (このの入力と出力のように)
  • プロットを回転させてもその位置に留まるタイトルをプロットに追加する

私の質問

  1. igraph オブジェクトの代わりにマトリックスを使用し、優先的にカラーコード (rgb、hex) を使用する場合、グループごとに線とノードを色付けすることは可能ですか?
  2. 基本機能には含まれていませんが、上から高度な書式設定を行う方法はありますか? (もちろん、パッケージを大幅に書き換えたり拡張したりする必要はありません)

ご提案ありがとうございます。

4

1 に答える 1