Show HN: Interactive Tree of Life
Posted by Lucent 5 days ago
Ptree consolidates of 11 taxonomic trees, both categorical like we used in school (plant, animalia) and phylogenetic (evolutionary descent), with instant crosswalk between them.
Across those trees it overlays 41 visual properties (categorical and numerical) assembled from hundreds of biological traits and sources. Color the tree by habitat, nutrition, size, longevity, even see vertical range of birds and depth of fish visually.
The backend is 800 GB of raw data distilled through a 9-step build process that reconciles and links all 11 trees along with hundreds of traits so every node in every tree gets all the properties. Every color and number presented retains and shows its provenance: original wording, citation, and license.
The frontend uses a custom Miller column implementation with fold-away gutter, all composited animation (no frameworks, pure DOM mutation). Use +'s to try to confuse it by expanding many branches and it will fold them away and route edges around them.
Made by the creator of ptable.com, a popular interactive periodic table website around since 1997.
Comments
Comment by culi 1 day ago
[1] https://tree.opentreeoflife.org/opentree/argus/ottol@378964/...
Comment by Lucent 1 day ago
Thanks to open data, I offer the same node hierarchy of OTT, among 10 other backbones, but present it with 3 different (perhaps less dazzling) viewing mechanics switchable at the top: Icicle, which packs hierarchy into a fixed vertical height while allowing depth to stay horizontally reachable. Chronogram is the opposite, showing structure even 10 levels deep in a compact horizontal region, but at the expense of large vertical expansion. And Tree, the default, which is a compromise that can also show multiple winding paths simultaneously by folding them against the gutter.
I also focus less on the tree itself and more on trait overlay and rolling up thousands or even millions of species into compact segments so you can get a feel for how many chordates lay eggs or how many spiders are carnivorous at a glance. https://ptree.org/#OTT
Comment by culi 1 day ago
ptree is a very cool project! I'm a believer in the idea of mixing phylogenetic trees and trait tables. In tomato breeding, there is a lot of attention paid to closely related species as they hybridize quite readily. Being able to represent the phylogenetic relationships alongside their traits, habitats, etc is an extremely useful data visualization strategy. I actually made a tool to automate making charts like these but I don't think it's mature enough to share yet
Anyhow really great work on the project
Comment by rhaps0dy 4 days ago
Comment by Lucent 4 days ago
I do filter structural junk per backbone, but only from evidence that backbone itself supplies: synonym/accepted status, "not-a-taxon", environmental, hidden, unplaced flags. I also insert neutral buckets such as "classes (no phylum)" where ranks are skipped, so thousands of taxa don't spill into one flat level.
What I deliberately don't do is move a taxon to the parent that I think makes more biological sense. Ptree (Ptable gets the same kind of requests to classify metalloids) is downstream of academic taxonomic authorities operating under something like Wikipedia's "no original research" policy. It can expose disagreement among authorities, but it shouldn't quietly become another undocumented taxonomy.
Naldaviricetes is a good example. It is unquestionably a class of viruses, but "Viruses" is not necessarily its formal kingdom. ICTV currently leaves it unassigned to a realm, kingdom, or phylum so Ptree's ICTV backbone places it directly beneath a display root called Viruses. NCBI places it beneath "Viruses incertae sedis," while GBIF supplies it without that viral higher lineage, producing the confusing placement you found.
Comment by kmoser 1 day ago
Comment by kpil 1 day ago
As a whole it's brilliant and humbling. Both the vastness and complexity of nature and biology on Earth, and also the absurd amount of work and human lifetime that has been spent on gathering the information. It's also a testament of the power of Wikipedia.
Comment by Lucent 1 day ago
The project only exists thanks to thousands of scientists carefully cataloguing all this data and releasing it CC-BY. I am only the interface.
Comment by cik 23 hours ago
Comment by takomora 5 days ago
Comment by MarkusQ 1 day ago
Comment by dang 1 day ago
Discussed a few times over the years!
Interactive Periodic Table - https://news.ycombinator.com/item?id=27650576 - June 2021 (22 comments)
Dynamic Periodic Table (2017) - https://news.ycombinator.com/item?id=20495105 - July 2019 (21 comments)
Worlds Best Periodic Table - https://news.ycombinator.com/item?id=4378346 - Aug 2012 (5 comments)
Dynamic Periodic Table - https://news.ycombinator.com/item?id=3199922 - Nov 2011 (20 comments)
Dynamic/Interactive Periodic Table - https://news.ycombinator.com/item?id=1193431 - March 2010 (2 comments)
Comment by Decimator 8 hours ago
Comment by andsoitis 1 day ago
https://www.researchgate.net/publication/37538009_mSpace_Exp...
Comment by jsphweid 1 day ago
Comment by Lucent 1 day ago
Edit: Regardless, I pulled it from production immediately out of an abundance of caution.
Comment by Aardwolf 1 day ago
Comment by Lucent 1 day ago
That raccoon you see is actually suffering from Morbillivirus Canine Distemper Virus and that photo is correctly attached to that virus, and that bird is indeed eating a lungfish. I actually do penalize outlier favorite counts for photos because they're often meme-ish. I may blacklist this so the 2nd most favorited lungfish can surface. There are a lot of detailed rules that score which photo you get based on aspect ratio, whether the subject is in captivity, alive, etc.
Comment by stared 1 day ago
Comment by intrasight 1 day ago
Comment by Lucent 1 day ago
Comment by searay112023 1 day ago
Comment by ohyoutravel 1 day ago
Comment by Lucent 1 day ago
However, the unique "roll-up" visualization of traits brought in an interesting method of self-correction. For example, if any other phyla than the obvious 4 showed up with a single egg-laying species, I went back to the drawing board to find out where that incorrect join introduced the error.
Comment by vladsiu 1 day ago