我试图制作一个类似于此的分解核心图:
我可以将coreness
传递给igraph图中的vertex.color
参数,它会自动分配颜色,但我宁愿用DiagrammeR绘图。它可以使用igraph对象,我只需要首先分配所需的所有属性,在这种情况下,每个顶点的核心和相应的颜色。我的问题是,如何根据核心性质为顶点指定颜色属性?
示例代码:
library(viridis)
library(igraph)
g <- graph_from_literal(1-2, 1-3, 2-3, 2-4, 2-5, 3-4, 4-5, 1-4, 2-6, 6-7)
V(g)$core <- coreness(g, "all")
col_df <- data.frame(node = V(g)$name, core = V(g)$core)
fillcol <- data.frame(core = 1:3, col = plasma(3))
col_df <- merge(col_df, fillcol)
core node col
1 1 6 #0D0887FF
2 1 7 #0D0887FF
3 2 5 #CC4678FF
4 3 1 #F0F921FF
5 3 2 #F0F921FF
6 3 3 #F0F921FF
7 3 4 #F0F921FF