biocore/empress

Support a "daylight" step for the unrooted layout algorithm

オープン

#436 opened on 2020/10/28

 (0 件のコメント) (0 件のリアクション) (0 人の担当者)JavaScript (32 件のフォーク)auto 404
feature requestgood first issue

Repository metrics

Stars
 (56 個のスター)
PR merge metrics
 (PR metrics pending)

説明

Felsenstein 2004 has a chapter on tree layout which gives a few examples of tree layouts. One of these is the equal-angle algorithm which Empress (and Gneiss, and PyCogent, ...) uses for unrooted layouts. This works pretty well, but it could be improved -- there are a few places in the moving pictures tree, for example, where there's unused space (so some of the branches could be angled outward a bit to separate them and take advantage of this space):

image image

Felsenstein describes the equal-daylight algorithm, an extension of the equal-angle algorithm that is apparently efficient and makes even prettier drawings. It doesn't seem like it would be really difficult to implement (... hopefully ...), so this might be a nice way to make the first layouts the user sees in Empress look even nicer.

(If having an extra step in the unrooted layout would be a problem for massive trees, we could probably make this optional, and/or detect the tree size and adjust accordingly.)

コントリビューターガイド