有没有人知道在R中有没有一个包或简单的方法来创建如下形式的树结构:

我不是在寻找一种方法来创建一个像上面这样的好情节。我最大的问题是找到一种方法来处理这样的树,在这种树中,节点、叶子和子节点之间有明确的区别。例如,我希望能够通过调整字符串或向量来切换两个叶子。所以我猜这主要是“数据存储”的问题。
我已经寻找了相当长的一段时间,偶然发现了一个名为'Dendrogram‘的软件包。这个包的问题是(据我所知)它不允许标记内部节点,如‘H’和'V‘。只有最后的叶子才能携带一个值或字符串。
我找到的另一个包是'rpart‘,但我认为这些包只对回归树有用。
如果有人知道些什么,我将非常感谢你的帮助!
发布于 2013-03-27 21:52:45
如果你有一个edgelist,你可以用igraph做一些非常类似的事情:
el <- matrix( c( "H" , "V" , "H" , "V2" , "V" , "1" , "V" , "V3" , "V3" , "3" , "V3" , "4" , "V2" , "2" , "V2" , "H2" ) , ncol = 2 , byrow = TRUE )
g <- graph.edgelist(el , directed = TRUE )
V(g)$label <- get.vertex.attribute(g, 'name')
plot(g,layout=layout.reingold.tilford)您还可以在el命令中将节点命名为字母,然后使用get.vertex.attribute(g, 'name')查看结果节点的名称,然后传递您喜欢的任何字符矢量以获得图片中的标签。

发布于 2013-03-27 22:01:33
是的,rpart可能不适合您的需要。尝试使用phylobase包。
如果您的树可以从文件中读取,那么您可能可以使用某种XML tree解析器,比如this。
https://stackoverflow.com/questions/15658422
复制相似问题