biocore/empress

Support a "daylight" step for the unrooted layout algorithm

开放

#436 创建于 2020年10月28日

 (0 条评论) (0 个反应) (0 位负责人)JavaScript (32 个派生)auto 404
feature requestgood first issue

仓库指标

星标
 (56 个星标)
PR 合并指标
 (PR 指标待抓取)

描述

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.)

贡献者指南