将文本添加到R中的字形 [英] Adding Text to an igraph in R
本文介绍了将文本添加到R中的字形的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有以下代码,这要感谢answer by @G.Grothendieck
library(igraph)
DF <- data.frame(in. = 1:6, out. = c(3, 3, 5, 5, 7, 7))
g <- graph_from_edgelist(as.matrix(DF[2:1]))
lay <- layout_as_tree(g)
plot(as.undirected(g), layout = lay %*% diag(c(1, -1)))
现在,我需要在此图中添加一些文本:
DF <- data.frame(in. = 1:6, out. = c(3, 3, 5, 5, 7, 7),
date = c('2019-11-01', '2019-11-01', '2020-01-01', '2020-01-01', '2020-12-31', '2020-12-31') )
我希望2019-11-01显示在顶层的一侧(或者更好,在每一层的两个节点之间),然后在下一层显示2020-01-01,在下一层显示‘2020-12-31’,最底层不显示任何内容。
这可能吗?
推荐答案
您可以将date
作为属性添加到图形对象g
中,也可以用看不见的箭头绘制有向图g
,例如edge.arrow.size = 0
:
g <- graph_from_data_frame(cbind(rev(DF), date))
lay <- layout_as_tree(g)
plot(g, layout = lay %*% diag(c(1, -1)), edge.label = E(g)$date, edge.arrow.size = 0)
这篇关于将文本添加到R中的字形的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文