
Function to paint selective regimes on a phylogenetic tree.
paint(tree, subtree, branch, which = 1)
A vector of class 'factor' with names corresponding to the nodes in tree
, specifying selective regimes.
An object of class ouchtree
.
An optional named vector specifying the root nodes of subtrees. Each branch that descends from this node will be painted with the specified regime.
An optional named vector specifying the end nodes of branches. The unique branch that terminates at the named node will be painted with the specified regime.
integer;
if tree
is a hansentree
, start not with a blank canvas but with the regime specifications tree
contains for the character indicated by which
.
Aaron A. King
The names of subtree
and branch
must be the names of nodes of tree
.
The painting proceeds in a particular order:
one can overpaint a branch.
The subtrees indicated by the elements of subtree
are painted first, in order.
Then the branches indicated by branch
are painted.
If tree
is of class hansentree
, then paint
begins with the regimes specified in the regimes
slot of tree
.
Otherwise, paint
begins with a blank canvas,
i.e., a tree painted with the single regime "nonspec".
Note that, if tree
is a multivariate hansentree
, then there are multiple regime specifications contained in tree
.
In this case, the argument which
lets you pick which one you wish to begin with;
by default, the first is used.
x <- with(
bimac,
ouchtree(nodes=node,times=time/max(time),ancestors=ancestor,labels=species)
)
r <- paint(x,subtree=c("1"="medium","9"="large","2"="small"),
branch=c("38"="large","2"="medium"))
plot(x,regimes=r,node.names=TRUE)
## compare to bimac['OU.LP']
h5 <- hansen(data=log(bimac['size']),tree=x,regimes=bimac['OU.LP'],
sqrt.alpha=1,sigma=1,reltol=1e-5)
r <- paint(h5,branch=c("18"="large"),subtree=c("9"="small"))
plot(x,regimes=r,node.names=TRUE)
Run the code above in your browser using DataLab