leeoniya / leeoniya/uPlot

Poor series focus performance with noisy data

Open
#787 14 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

discussion
Dominant language
JavaScript
Stars
10.5k
Forks
463
PR merge metrics
No merged PRs in 30d

Description

Following https://github.com/VKCOM/statshouse/issues/134, as promised.

Note that we use a hack/workaround of setting focus.alpha = 1.1, this way the plot is not redrawn every time focus changes (which can happen every frame for dense data, and will tank the performance completely). Instead, we simply highligh the focused series in the legend.

Here is a self-contained file that reproduces the problem: uplot-focus-perf.zip, using real production data. Hovering over the plot is janky and slow with series focus enabled, and smooth otherwise.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by running the self-contained uPlot reproduction in uPlot-focus-perf.zip with the production data, comparing hover behavior with series focus enabled and disabled. Investigate how focus changes affect redraws for dense data, including the reported focus.alpha = 1.1 workaround; done means hovering remains responsive with series focus enabled without relying on that workaround.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
data-visualization, performance
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.