一种树状布局,非常适合树,对于循环不太多的图来说也可以接受。
参数
- graph
输入图。
- root
根顶点或根顶点的索引。 如果这是一个非空向量,则提供的顶点 ID 用作树的根(如果图是连通的,则用作单个树的根)。 如果它是一个空向量,则根顶点会自动计算,计算基于拓扑排序,执行的模式与
mode
参数相反。 在顶点排序之后,从每个组件中选择一个。- circular
逻辑标量,是否以圆形方式绘制树。 默认为
FALSE
,因此树的分支是自下而上(或自上而下,请参见flip.y
参数。)- rootlevel
当绘制不是树的森林(即它们是不连通的并且具有树组件)时,此参数可能很有用。 它指定森林中每棵树的根顶点的级别。 仅当
roots
参数不是空向量时才考虑它。- mode
指定构建树时要考虑的边。 如果它是“out”,则仅考虑父节点的输出边;如果是“in”,则仅考虑输入边。 如果它是“all”,则使用所有边(这是 igraph 0.5 和之前的版本中的行为)。 如果未给出根顶点,则此参数还会影响根顶点的计算。 请参阅
roots
参数。- flip.y
逻辑标量,是否翻转“y”坐标。 默认值为翻转,因为这会将根顶点放在顶部。
- ...
传递给
layout_as_tree()
。
参考文献
Reingold, E and Tilford, J (1981). Tidier drawing of trees. IEEE Trans. on Softw. Eng., SE-7(2):223–228.
参见
其他图布局:add_layout_()
, component_wise()
, layout_()
, layout_as_bipartite()
, layout_as_star()
, layout_in_circle()
, layout_nicely()
, layout_on_grid()
, layout_on_sphere()
, layout_randomly()
, layout_with_dh()
, layout_with_fr()
, layout_with_gem()
, layout_with_graphopt()
, layout_with_kk()
, layout_with_lgl()
, layout_with_mds()
, layout_with_sugiyama()
, merge_coords()
, norm_coords()
, normalize()
作者
Tamas Nepusz ntamas@gmail.com 和 Gabor Csardi csardi.gabor@gmail.com
示例
tree <- make_tree(20, 3)
plot(tree, layout = layout_as_tree)
plot(tree, layout = layout_as_tree(tree, flip.y = FALSE))
plot(tree, layout = layout_as_tree(tree, circular = TRUE))
tree2 <- make_tree(10, 3) + make_tree(10, 2)
plot(tree2, layout = layout_as_tree)
plot(tree2, layout = layout_as_tree(tree2,
root = c(1, 11),
rootlevel = c(2, 1)
))