SciChart® the market leader in Fast WPF Charts, WPF 3D Charts, and now iOS Charting & Android Chart Components
I am trying to build an application with multiple charts on one screen (3) and each chart annotated with 20-25 annotations.
In total I have 6 FastLineRenderableSeries at once – 2 per chart.
I found serious performance issues after adding more than 10 annotations.
When a user presses a key I go to another set of data. Annotations are created on each data change. I create temporary collection and assign it to the surface annotations collection at once. I also suspend updates through Viewport Manager.
Creation of annotations does not seem to affect the performance, but the rendering of them does.
Most of them are derivatives of AxisMarkerAnnotation and apply a different label template. I tested adding standard Text Annotations instead, just to see whether the custom template had to do something with the performance drop, but it was more or less the same case.
The custom templates are also really simple, it is either a text block or a filled shape, always one component.
Do you have any advises for using a bigger number of annotations?
How to make their rendering faster?
When I remove all annotations the “scrolling” of data goes really smooth.
I am running out of ideas of how to improve.
PS Is there any way to try out the other renders before buying a license?
For the benefit of the SciChart community, I wanted to share that you had contacted us on support tickets and shared with us a code sample that reproduces the issue.
We were able to debug the code and provide some ideas of how to improve matters.
You reported that you were able to solve the performance problem by restructuring your architecture a little bit, ensuring that you did not generate annotations too many times, and re-use annotations.
So, if anyone else has similar problems to the above, contact us and we will be glad to help!
Please login first to submit.