biocore / biocore/empress

Support aggregating continuous-value barplots based on clade collapsing

Open
#376 0 comments 1 reaction 0 assignees View on GitHub
barplots feature request
Dominant language
JavaScript
Stars
56
Forks
32
PR merge metrics
No merged PRs in 30d

Description

This came up in this morning's meeting (thank you @bextra!). The idea would be something like -- if a barplot layer using just continuous fields is selected, and clade collapsing is applied, there should be an option to combine all of the tip bars in that layer within each collapsed clade into a larger bar spanning the same width.

The color (or length) of these "aggregate" bars should be computed based on some combination of the tip values: average, sum, median, min, max, etc. The logic to do these computations should be reusable between this and the quantitative sample metadata aggregation stuff planned in #353.

So in the moving pictures example below (using phylum-level collapsing and showing a barplot of each tip's `Confidence`), it should be possible to visualize the average (or sum, median, etc.) confidence for each of the collapsed clades: which may be more useful than the current representation, which only shows confidence at the level of each tip.

![snazzy](https://user-images.githubusercontent.com/4177727/92772703-cbc77080-f350-11ea-85e0-a736e7476668.png)

Contributor guide

Open the contributing guide

Research direction

The issue names no files, tests, or entry points. Start by tracing continuous-value barplot rendering and clade-collapsing behavior, then compare the planned reusable aggregation logic in #353; done should include a defined aggregation choice and correctly sized and colored bars for each collapsed clade.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
data-visualization
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.