Calculate the volatility of each tip: namely, the impact on the mean phylogenetic information distance (Smith 2020) between trees when that tip is removed. Effective when the number of trees is small.
References
Smith MR (2020). “Information theoretic Generalized Robinson--Foulds metrics for comparing phylogenetic trees.” Bioinformatics, 36(20), 5007--5013. doi: 10.1093/bioinformatics/btaa614 .
See also
Other tip instability functions:
TipInstability()
Examples
library("TreeTools", quietly = TRUE)
trees <- AddTipEverywhere(BalancedTree(8), 'Rogue')
trees[] <- lapply(trees, AddTip, 'Rogue', 'Rogue2')
sb <- TipVolatility(trees)
sbNorm <- 1 + (99 * (sb - min(sb)) / (max(sb - min(sb))))
col <- hcl.colors(128, 'inferno')[sbNorm]
plot(consensus(trees), tip.color = col)
plot(ConsensusWithout(trees, names(sb[sb == max(sb)])))