fancyTree | R Documentation |
Plots phylogenies (or phylogenetic trees and comparative data) in a variety of different styles.
fancyTree(tree, type=c("extinction","traitgram3d","droptip","densitymap",
"contmap","phenogram95","scattergram"), ..., control=list())
phyloScattergram(tree, X=NULL, ...)
phenogram95(tree, x=NULL, ...)
tree |
an object of class |
type |
the type of special plot to create. See Description. |
... |
arguments to be passed to different methods. See Description. |
control |
a list of control parameters, depending on |
X |
in |
x |
in |
This function plots a phylogeny or phylogenetic tree and comparative data in a variety of different styles, depending on the value of type
. In some instances, fancyTree
is now just a wrappe for other phytools functions, such as contMap
and densityMap
.
If type="extinction"
(or any unambiguous abbreviation) the function will plot a tree in which branches preceding the MRCA of all extant taxa and branches leading only to extinct lineages are plotted with dashed red lines.
If type="traitgram3d"
the function will plot a three dimensional traitgram (that is, a projection of the tree into three dimensional morphospace where two dimensions are the phenotypic trait and the third axis is time since the root). In this case, the additional argument X
, a matrix containing the tip values of all species (with species IDs as row names) should be supplied. Optionally, the user can also supply the matrix A
, which contains the ancestral states in the tree with rows labeled by node number.
If type="droptip"
the function will create a two panel figure in which the first panel is the tree with lineages to be pruned highlighted; and the second panel is the pruned tree. In this case, the additional argument tip
, the tip name or vector of tip names to be dropped, must be supplied.
If type="densitymap"
, a posterior probability density "heat-map" is created based on a set of trees in a "multiSimmap"
object containing a binary [0,1] mapped character. (See densityMap
for additional optional arguments if type="densitymap"
.)
If type="contmap"
, reconstructed continuous trait evolution is mapped on the tree. Again, see contMap
for additional arguments if type="contmap"
.
If type="phenogram95"
a 95% traitgram (aka. "phenogram") is plotted using transparency to visualize uncertainty at ancestral nodes and along branches. Most of the options of phenogram
are available.
Finally, if type="scattergram"
a phylogenetic scatter plot matrix containing contMap
style trees on the diagonal and phylomorphospace
plots in non-diagonal panels is produced. For this type a trait matrix X
must also be supplied. The only additional arguments available for this type are ftype
, fsize
, colors
, and label
. (See phylomorphospace
for details on how these arguments should be used.) This function calls phyloScattergram
(which is also now exported to the name space) internally. In addition to creating a plot, phyloScattergram
also returns an object of class "phyloScattergram"
which can be replotted using different options if desired.
Presently only type="traitgram3d"
uses the list control
which can be supplied the same set of control parameters as phylomorphospace3d
, as well as the control parameter maxit
which will be passed to anc.ML
.
Finally, the optional argument hold
will be passed to multiple methods if supplied. It is a logical value that indicates whether or not the output to the graphical device should be held using dev.hold
before plotting (defaults to hold=TRUE
).
This function plots different types of phylogenetic trees. For type="droptip"
the function also returns the pruned tree.
Liam Revell liam.revell@umb.edu
Evans, M. E. K., Smith, S. A., Flynn, R. S., Donoghue, M. J. (2009) Climate, niche evolution, and diversification of the "bird-cage" evening primroses (Oenothera, sections Anogra and Kleinia). American Naturalist, 173, 225-240.
Revell, L. J. (2013) Two new graphical methods for mapping trait evolution on phylogenies. Methods in Ecology and Evolution, 4, 754-759.
Revell, L. J. (2014) Graphical methods for visualizing comparative data on phylogenies. Chapter 4 in Modern phylogenetic comparative methods and their application in evolutionary biology: Concepts and practice (L. Z. Garamszegi ed.), pp. 77-103.
Revell, L. J. (2024) phytools 2.0: an updated R ecosystem for phylogenetic comparative methods (and other things). PeerJ, 12, e16505.
contMap
, densityMap
, drop.tip
, phenogram
, phylomorphospace3d
, plot.phylo
, plotSimmap
## plot tree with extinction
set.seed(10)
tree<-pbtree(b=1,d=0.4,t=4)
fancyTree(tree,type="extinction")
## Not run:
## plot 3D traitgram
## load data from Revell & Collar (2009)
data(sunfish.tree)
data(sunfish.data)
fancyTree(sunfish.tree,type="traitgram3d",
X=sunfish.data[,2:3],
control=list(spin=FALSE))
## End(Not run)
## plot with dropped tips
tree<-pbtree(n=30)
tips<-sample(tree$tip.label)[1:10]
pruned<-fancyTree(tree,type="droptip",tip=tips)
par(mfrow=c(1,1)) ## reset mfrow to default
## Not run:
## plot 95-percent CI phenogram
data(mammal.tree)
data(mammal.data)
bodyMass<-setNames(mammal.data$bodyMass,
rownames(mammal.data))
fancyTree(mammal.tree,type="phenogram95",x=bodyMass,
fsize=0.7,ftype="i")
## End(Not run)
par(mar=c(5.1,4.1,4.1,2.1)) ## reset mar to defaults
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.