makeNodeLabel

0th

Percentile

Makes Node Labels

This function makes node labels in a tree in a flexible way.

Keywords
manip
Usage
makeNodeLabel(phy, method = "number", prefix = "Node", nodeList = list(), ...)
Details

The three methods are described below:

  • ``number''
{The labels are created with 1, 2, ...prefixed with the argument prefix; thus the default is to have Node1, Node2, ...Set prefix = "" to have only numbers.} ``md5sum''{For each node, the labels of the tips descendant from this node are extracted, sorted alphabetically, and written into a temporary file, then the md5sum of this file is extracted and used as label. This results in a 32-character string which is unique (even accross trees) for a given set of tip labels.} ``user''{the argument nodeList must be a list with names, the latter will be used as node labels. For each element of nodeList, the tip labels of the tree are searched for patterns present in this element: this is done using grep. Then the most recent common ancestor of the matching tips is given the corresponding names as labels. This is repeated for each element of nodeList.}

Value

an object of class "phylo".

code

"user"

See Also

makeLabel, grep, mixedFontLabel

Aliases
Examples
tr <-
"((Pan_paniscus,Pan_troglodytes),((Homo_sapiens,Homo_erectus),Homo_abilis));"
tr <- read.tree(text = tr)
tr <- makeNodeLabel(tr, "u", nodeList = list(Pan = "Pan", Homo = "Homo"))
plot(tr, show.node.label = TRUE)
### does not erase the previous node labels:
tr <- makeNodeLabel(tr, "u", nodeList = list(Hominid = c("Pan","Homo")))
plot(tr, show.node.label = TRUE)
### the two previous commands could be combined:
L <- list(Pan = "Pan", Homo = "Homo", Hominid = c("Pan","Homo"))
tr <- makeNodeLabel(tr, "u", nodeList = L)
### combining different methods:
tr <- makeNodeLabel(tr, c("n", "u"), prefix = "#", nodeList = list(Hominid = c("Pan","Homo")))
plot(tr, show.node.label = TRUE)
Documentation reproduced from package ape, version 3.0-2, License: GPL (>= 2)

Community examples

Looks like there are no examples yet.