Learn R Programming

treeDbalance (version 1.2.0)

Computation of 3D Tree Imbalance

Description

The main goal of the R package 'treeDbalance' is to provide functions for the computation of several measurements of 3D node imbalance and their respective 3D tree imbalance indices, as well as to introduce the new 'phylo3D' format for rooted 3D tree objects. Moreover, it encompasses an example dataset of 3D models of 63 beans in 'phylo3D' format. Please note that this R package was developed alongside the project described in the manuscript 'Measuring 3D tree imbalance of plant models using graph-theoretical approaches' by M. Fischer, S. Kersting, and L. Kühn (2023) , which provides precise mathematical definitions of the measurements. Furthermore, the package contains several helpful functions, for example, some auxiliary functions for computing the ancestors, descendants, and depths of the nodes, which ensures that the computations can be done in linear time, or functions that convert existing formats of 3D tree models of other software into the 'phylo3D' format. Moreover, it comprises functions to extract the graph-theoretical topology without vertices of in- and out-degree 1 of rooted 3D trees as well as to adapt node enumerations to the common 'phylo' format. Most functions of 'treeDbalance' require as input a rooted tree in the 'phylo3D' format, an extended 'phylo' format (as introduced in the R package 'ape' 1.9 in November 2006). Such a 'phylo3D' object must have at least two new attributes next to those required by the 'phylo' format: 'node.coord', the coordinates of the nodes, as well as 'edge.weight', the literal weight or volume of the edges. Optional attributes are 'edge.diam', the diameter of the edges, and 'edge.length', the length of the edges. For visualization purposes one can also specify 'edge.type', which ranges from normal cylinder to bud to leaf, as well as 'edge.color' to change the color of the edge depiction. This project was supported by the joint research project DIG-IT! funded by the European Social Fund (ESF), reference: ESF/14-BM-A55-0017/19, and the Ministry of Education, Science and Culture of Mecklenburg-Western Pomerania, Germany, as well as by the project ArtIGROW, which is a part of the WIR!-Alliance 'ArtIFARM – Artificial Intelligence in Farming' funded by the German Federal Ministry of Education and Research (FKZ: 03WIR4805).

Copy Link

Version

Install

install.packages('treeDbalance')

Monthly Downloads

105

Version

1.2.0

License

GPL-3

Maintainer

Sophie Kersting

Last Published

February 24th, 2026

Functions in treeDbalance (1.2.0)

sketchPhylo3D

Sketch a phylo3D object
print.phylo3D

Print, summary and plot methods for phylo3D objects
example3Dtrees

Examples of rooted 3D trees
extractTopology

Extract the non-3D topology of trees in phylo(3D) format
combined3DIndex

Calculation of combined 3D imbalance indices
enum2depthwise

Change the node enumeration of trees in phylo(3D) format
imbalSubdiv_mu

Calculation of the centroid distances
all3DImbalIndices

Calculation of integral-based distance- and angle-based 3D imbalance indices
makePhylo3DBalanced

Turn a rooted 3D tree into one of its balanced versions
qsm2phylo3D

Convert QSM format to a phylo3D object
imbalSubdiv_A

Calculation of the centroid angles
plotPhylo3D

Plot a phylo3D object
imbalProfile

Calculation of 3D imbalance profiles
extendPhylo

Useful extensions to the phylo format