SciChart® the market leader in Fast WPF Charts, WPF 3D Charts, iOS Chart, Android Chart and JavaScript Chart Components

0
0

Hello!

We have a SciChart plot application that a customer used to render 192 plots. The issue is that when so many series rendered is that the UI blocks on the initial redraw for about a second.

We have a SciChartSurface with RenderableSeries property bound to an ObservableCollection. We do use SuspendUpdates() when populating the ViewModel collection.

What is a good approach to either speed-up rendering or at least make the UI more responsive while all these plots are rendered?

Thank you in advance for any tips.

Version
6.2.1.13304
  • You must to post comments
0
0

Hi Alex,

Thanks for getting in touch! The first things to consider for performance when you have many plots (192, wow!) are these:

  • Instantiation of FrameworkElements takes time
  • SciChart WPF relies on FrameworkElements for bindings for RenderableSeries, Axis and Axis Labels
  • Our MVVM API, while very fast for updating data, adds slightly more overhead to instantiation of chart parts

If you are using the MVVM API, I would suggest to ditch it for chart configurations with hundreds of series (or hundreds of charts). I know that means uglier looking code, but it will be faster to instantiate.

Next, try to consider if you need the axis labels visible for all charts. I imagine that you have SparkLines or something similar since the charts are so small. Hiding axis labels if you haven’t already can improve performance of loading considerably.

Finally – we are working on a solution for a consultancy customer of ours that has a similar situation. They have 200 series, each with 200 axis on a chart and need to change them very frequently (new series, new axis). This also stresses the chart as instantiation of 1000s of FrameworkElements takes time.

We are working on a prototype for them now which can dramatically improve the startup time for very heavy charts like the one you’re talking about. If that’s something that may be use to you, get in touch with sales, let’s discuss it.

Best regards,
Andrew

  • You must to post comments
Showing 1 result
Your Answer

Please first to submit.