R:图中包含顶点信息的树图

ffx8fchx  于 2023-09-27  发布在  其他
关注(0)|答案(1)|浏览(127)

我试图绘制我的数据,它有一个层次结构,我想用树结构来可视化它。这是我迄今为止的尝试:

library(igraph)

df <- data.frame("node_name"=c("root", "root0", "root1", "root00", "root01", "root10", "root11"),
                 "parent"=c("root", "root", "root", "root0", "root0", "root1", "root1"),
                 "incident"=c(0, 0, 1, 0, 1, 0, 1),
                 "rating"=c(1, 0.97, 1.02, 0.95, 0.99, 0.99, 1.09))

g <- igraph::graph_from_data_frame(d=df[, c("node_name", "parent")],
  vertices=df[, c("node_name", "incident", "rating")])

pdf()
plot(g, layout=layout_as_tree(g, flip.y=FALSE))
dev.off()

这就是我得到的:

我看不出有什么办法能把垂直扫描仪的信息加到图上。我可以使用例如访问它。V(g)$rating,但我似乎不能把它添加到图中。R中是否有其他包可以用于可视化数据,并在每个节点中包含incidentrating信息?

t9aqgxwy

t9aqgxwy1#

我假设您希望将信息添加到 * 边 * 而不是 * 节点 *,下面的内容可能会有所帮助

g <- igraph::graph_from_data_frame(
    d = df[, c("node_name", "parent")]
) %>%
    set_edge_attr(name = "label", value = with(
        df,
        paste0("incident:", incident, "\n", "rating:", rating)
    ))

plot(g, layout = layout_as_tree(g, flip.y = FALSE))

相关问题