[Bug] Line Chart Performance Optimization for Real-Time Time-Series Data does not seem as advertised
- Dominant language
- TypeScript
- Stars
- 67.3k
- Forks
- 19.8k
- Avg merge
- 15h 17m
- Merged PRs (30d)
- 5
Description
### Version
5.5.1
### Link to Minimal Reproduction
https://codepen.io/atmgrifter00/pen/VYLReJg
### Steps to Reproduce
When running the CodePen, be sure to run in a 'Live view' (new tab). Note that I have tried several different ways of giving the data to echarts (via `dataset`, via `TypedArray`s), and all have resulted in worse performance than what is present in the CodePen. Setting `sampling` can improve performance, but is ultimately a lossy rendering of the data, and still doesn't meet performance goals.
Note that in the example CodePen, all of the data is pre-generated, and not generated per update.
### Current Behavior
Plotting 80K samples across 4 channels (4 plots at 20K samples each), should render faster than 30 fps, and it's closer to 10fps (ultimately under 1M samples per second).
This seems not representative of what's listed in the v5 release docs:

### Expected Behavior
I would expect echarts could achieve similar or better performance than [flot](https://github.com/flot/flot). However, flot [can currently render 80K samples per update at over 100fps](https://codepen.io/atmgrifter00/pen/JodzXMV), upwards of 10M samples per second! Further, it should be able to match flot without rendering in a lossy manner (as flot does not).
### Environment
```markdown
- OS:
- Browser:
- Framework:
```
### Any additional comments?
_No response_
Contributor guide
Research direction
Start by running the linked ECharts CodePen in Live view and compare its frame rate with the linked Flot reproduction, using the reported 80K samples across four channels. Review the v5 release documentation claims and identify whether ECharts can meet the stated non-lossy performance target; done means documenting or correcting the discrepancy with a reproducible result.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- data-visualization, performance
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 42/100