A collection of tools to explore the phylogenetic signal in univariate and multivariate data. The package provides functions to plot traits data against a phylogenetic tree, different measures and tests for the phylogenetic signal, methods to describe where the signal is located and a phylogenetic clustering method.

A unified method, called M statistic, is provided for detecting phylogenetic signals in continuous traits, discrete traits, and multi-trait combinations. Blomberg and Garland (2002) <doi:10.1046/j.1420-9101.2002.00472.x> provided a widely accepted statistical definition of the phylogenetic signal, which is the "tendency for related species to resemble each other more than they resemble species drawn at random from the tree". The M statistic strictly adheres to the definition of phylogenetic signal, formulating an index and developing a method of testing in strict accordance with the definition, instead of relying on correlation analysis or evolutionary models. The novel method equivalently expressed the textual definition of the phylogenetic signal as an inequality equation of the phylogenetic and trait distances and constructed the M statistic. The M statistic implemented in this package is based on the methodology described in Yao and Yuan (2025) <doi:10.1002/ece3.71106>. If you use this method in your research, please cite the paper.

Analyze spatial phylogenetic diversity patterns. 
    Use your data on an evolutionary tree and geographic distributions of the 
    terminal taxa to compute diversity and endemism metrics, test significance 
    with null model randomization, analyze community turnover and biotic 
    regionalization, and perform spatial conservation prioritizations. All 
    functions support quantitative community data in addition to binary data.

Functions to read and write APE-compatible phylogenetic
  trees in NEXUS and Newick formats, while preserving annotations.

Tools for calculating and viewing topological properties of phylogenetic trees.