Skip to content

Releases: ms609/TreeTools

v1.12.0

25 Jul 13:46
Compare
Choose a tag to compare

New methods and functions

  • TopologyOnly() removes metadata from phylo objects.
  • J1Index() computes the robust, universal tree balance measure of
    Lemant et al. 2022 doi:10.1093/sysbio/syac027, incorporating code by Rob Noble.

Enhancements

  • Consistent sequence of list entries in phylo objects.
  • RandomTree() returns trees for < 3 leaves.
  • root_on_node() handles trees with < 2 leaves.
  • Support larger trees in TotalCopheneticIndex(), fixing #158.

v1.11.1

07 Jun 15:28
Compare
Choose a tag to compare
  • Set random seed and increase tolerance to avoid false negatives on tests.

v1.11.0

23 May 15:52
Compare
Choose a tag to compare

New methods and functions

  • YuleTree() generates a random tree by the Yule process.
  • DescendantTips() complements DescendantEdges(), rewritten in C++, fixing a bug when edges were not in preorder.
  • NodeNumbers() returns the indices of nodes within a tree.

Enhancements

  • RandomTree(root = TRUE) roots the tree on a random edge.
  • RoguePlot()$legendLabels returns suggested labels for legend.
  • Support node labels in AddTip(), CollapseNode(), DropTip(), MakeTreeBinary(), Renumber(), Reorder(), SortTree(), Subtree() (#149).
  • AddTip(edgeLength = NULL) defaults to lengthBelow. This will become the default in a future release.
  • An entry point to the C++ function root_on_node() is now exported (intended for expert use only).
  • Fix handling of weighted trees by root_on_node().
  • Use KeepTip() internally so SplitFrequency() supports Splits objects as documented.

v1.10.0

19 Aug 07:20
Compare
Choose a tag to compare

New methods and functions

  • TipTimedTree() displays trees where leaves are associated with absolute ages.
  • ReadMrBayesTrees() samples trees from posterior of MrBayes output.
  • is.TreeNumber() method.

Improvements

  • Support zero-edge trees in as.Splits() and NSplits().
  • Support empty constraints in AddUnconstrained().
  • Add space between tokens in WriteTntCharacters() to support continuous characters (#139).

Deprecations and breaking changes

  • Change order of parameters in DescendantEdges()
  • Deprecate AllDescendantEdges(); use DescendantEdges() instead.
  • Deprecate EnforceOutgroup(); use RootTree() instead.
  • Remove NonDuplicateRoot() and in.Splits().

v1.9.2

27 Apr 09:35
1f7cf27
Compare
Choose a tag to compare
  • Improve support for comments in ReadNotes().
  • Support Nexus-escaped ''s in ReadCharacters().
  • Add legend parameter to RoguePlot().
  • RoguePlot() now returns invisibly.
  • Deprecate SpectrumLegend() – spun off to separate "PlotTools" package.

v1.9.1

21 Mar 07:01
8139af1
Compare
Choose a tag to compare
  • AddUnconstrained() and ImposeConstraint() handle wider range of inputs.

  • PhyDatToMatrix() can (and by default does) override levels to write
    ambiguous tokens in custom formats such as {01}.

  • Call C functions using symbols, not strings.

v1.9.0

29 Nov 08:08
Compare
Choose a tag to compare

New methods and functions

  • ZeroTaxonTree() creates a phylo object with no leaves.

  • DropTip() gains new methods DropTip.list() and DropTip.NULL().

  • as.matrix.phylo() converts a tree to a matrix representation, allowing
    a tree to be passed as a constraint to ImposeConstraint().

  • as.matrix.Splits() and as.matrix.phyDat() methods added as synonyms to
    as.logical.Splits() and PhyDatToMatrix().

Improvements

  • Handle TipLabels(0) and BalancedTree(0).

  • Support zero-leaf trees in as.Splits() and duplicated.Splits().

  • Support non-identical tip labels in as.Splits().

  • Try Latin-1 encoding if ReadCharacters() family fail under UTF-8.

v1.8.0

15 Sep 08:27
Compare
Choose a tag to compare

New methods and functions

  • TntOrder() renumbers a tree's nodes to match TNT's convention.

  • head() and tail() methods for Splits objects.

  • Set names of splits object with names(splits) <- ....

  • as.Splits() support character vectors in the form "...***".

Improvements

  • ReadTntTree() reads tree tags and follows TNT node numbering conventions.

  • SpectrumLegend() gains title parameter and more styling options.

  • Support > 32767 trees in Consensus() (#127).

  • DropTip() speed improved when branch lengths are present.

v1.7.3

20 Jul 14:50
Compare
Choose a tag to compare
  • ReadTntTree() supports multi-line trees.

  • as.MixedBase() supports larger trees (44–32767 tips).

  • Add deprecation warning to in.Splits().

v1.7.2

24 May 21:22
c45da8d
Compare
Choose a tag to compare
  • RenumberTips() drops "preorder" attribute, as reordering tip labels may
    break edge ordering guarantee.

  • Native implementation of ClusterTable class.

  • Replace throw with stop in C++ scripts.