R:图中带有顶点信息的树形图

问题描述 投票:0回答:1

我正在尝试绘制具有分层结构的数据,并且我想使用树结构将其可视化。这是我迄今为止的尝试:

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
中是否还有其他包可以用来可视化我的数据并在每个节点中包含
incident
rating
信息?

r plot tree igraph
1个回答
0
投票

我假设您想将信息添加到edges而不是nodes,下面可能会有所帮助

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))

© www.soinside.com 2019 - 2024. All rights reserved.