如何在tbl_graph的边缘添加颜色信息?我想根据'to'和'from'节点的颜色为边缘着色:如果两个节点的颜色相同,则它们之间的边缘应具有相同的颜色。
library(tidyverse)
library(tidygraph)
library(ggraph)
create_notable('tutte') %>%
activate(nodes) %>%
mutate(group = as.factor(group_louvain())) %>%
ggraph() +
geom_node_point(aes(color=group),size=7) +
geom_edge_link()
答案 0 :(得分:0)
好的...我找到了答案!
g <- create_notable('tutte') %>%
activate(nodes) %>%
mutate(id = row_number(),
group = as.factor(group_louvain()))
g <- g %>%
activate(edges) %>%
mutate(group_from = .N()$group[from],
group_to = .N()$group[to]) %>%
mutate(ge = ifelse( group_from == group_to, group_from, NA))
ggraph(g) +
geom_node_point(aes(color=group),size=7) +
geom_edge_link(aes(color = as.factor(ge)) )