-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Remove large series models from reactive data in Plots #6879
Comments
This must have been an issue pre Vue3 as well, no? Does it improve steady state rendering of plots as well? |
Steady state looks about the same (surprisingly to me). It's anything interactive (zoom/rectangles/highlighting points) that drags the performance down with traversals of the big reactive objects. |
Got it, thanks, this helps me to prioritize the fix. |
To test:
|
Verified Testathon 9/12/23 -- Plots are much more responsive, with or without annotations |
Verified Testathon 9/12/2023 |
Summary
Plot configurations, highlights, and annotations have series models in them, and are reactive all the way down. We should instead being passing around series IDs instead of the full series model, and then have the individual components look up the series models internally. The trick here is they’ll need to then follow updates to add/removals of both series, and in the case of stacked plots, adding/removal of telemetry from the composition. I think this logic would be common to Legend components, MctPlot, and MctChart, and could exist in a separate helper class. The helper class could also return a series given an ID, which is what all these components want in the first place.
The text was updated successfully, but these errors were encountered: