OpenRefine / OpenRefine/OpenRefine
Configurable bin size in histogram-based facets
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 12k
- Forks
- 2.2k
- Avg merge
- 1d 14h
- Merged PRs (30d)
- 27
Description
Facets which show histograms (numeric and timeline facets) determine the bin size automatically from the data.
Sometimes this bin size is inappropriate: the presence of outliers can increase the spread of the distribution and make the histogram too coarse for the data. This is especially problematic because users can only select bin boundaries as upper or lower bounds when filtering the grid.
My current workaround in these cases is to edit the GREL formula that generates the facet. For instance if the values spread from 0 to 100 but you are interested in a granular selection in small values, change the expression from value to min(value, 10): that will give you more granular histograms, moving all larger values to the last bin. That is obviously not very convenient.
Proposed solution
Let users select the bin size from the facet UI.
Alternatives considered
We could also:
- let users select filter boundaries beyond histogram bin boundaries (not sure if the user experience would be great)
- let users zoom in/out on particular parts of the histogram (and dynamically adapt the bin size). That is essentially what my workaround above does, but in a hacky way.
Additional context
Encountered when migrating the facets to the new architecture.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by locating the histogram-based numeric and timeline facet UI in the new facet architecture and read how bin sizes are currently calculated. The issue is done when users can select a bin size in the facet UI and the histogram and filtering boundaries reflect that choice.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- data-visualization, frontend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100