Skip to main content

A clld plugin to support language phylogenies

Project description

clld-phylogeny-plugin

Plugin for the clld framework providing support for phylogenetic trees in clld apps.

This plugin includes the phylotree library to render phylogenetic trees in the browser.

Build Status PyPI

Introduction

While plotting cross-linguistic data on a map serves as quick visualization of the correlation between the data and geography, plotting the data on a phylogenetic tree allows inspection of the correlation between the data and some theory about language relatedness, embodied in the tree.

The clld-phylogeny-plugin package supports this kind of visualization by

  • adding database models to store phylogenetic trees (and how the tree labels correspond to Language objects)
  • adding a Tree component, allowing simple rendering of a tree on a page
  • adding support for "plotting" Parameter objects on a tree, i.e. plotting the value for a given (Parameter, Language) pair next to the language's label on the tree.

Usage

TODO: See https://github.com/clld/grambank/commit/4101243597c3c95d21786fe8bdcf8cf060da609b for a minimal example.

To make clld-phylogeny-plugin functionality available to a clld app, it must be included in the app's configuration - typically in <app>:main:

    config.include('clld_phylogeny_plugin')

This will add a Resource Phylogeny with corresponding routes

  • /phylogenys - the index page listing all available phylogenies
  • /phylogenys/<ID> - a phylogeny's details page, by default rendering the associated tree.

Plotting parameters on trees

To synchronize plotting of markers for parameter values on maps and trees, the Tree.get_marker method may need to be adjusted. This can be done by registering a derived Tree class as ITree utility:

class MyTree(clld_phylogeny_plugin.tree.Tree):
    def get_marker(self, valueset):
        # compute marker shape and color from valueset
        return shape, color

....
    config.registry.registerUtility(MyTree, ITree)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

clld-phylogeny-plugin-1.6.0.tar.gz (176.4 kB view hashes)

Uploaded Source

Built Distribution

clld_phylogeny_plugin-1.6.0-py2.py3-none-any.whl (178.1 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page