I have a real-time chart with a SciChartOverview attached. Since the chart series is being constantly updated as new data arrives, I must also synchronize the overview by adding new data to its series. I can throttle the chart drawing using SuspendUpdates, but the overview has no equivalent method. Keeping the overview up to date is therefore much more CPU intensive than drawing the actual chart.
I would like to request that you add a SuspendUpdates feature to the SciChartOverview in a future release.
Also, is there a way to set the maximum refresh rate on a chart and on an overview? Ideally I would like to be able to have multiple charts and overviews on a screen, and set the refresh rate for each of them independently. I can use SuspendUpdates successfully if there is no built-in mechanism.
- asthomas asked 11 years ago
- You must login to post comments
An update: Scichart v3.0 now features SciChartSurface.MaxFrameRate property.
From the release notes:
11. SciChartSurface.MaxFrameRate
Limit frame-rate to a maximum Hertz, or leave null for default (unlimited).
Useful for strip charts (eg. CPU, Temperature monitoring) in process control
Note low values, e.g. 1, will not only limit redrawing but frame-rate when responding to mouse/zoom events
This allows limiting of the refresh rate of a SciChartSurface in Hz. The default value is Null, which means ‘unlimited’. SciChart will draw as fast as it can. A value of 24 can be used to dramatically reduce CPU overhead or 1Hz can be used to create strip charts.
- Andrew Burnett-Thompson answered 10 years ago
- You must login to post comments
Hi again,
Thanks again for the suggestion! Yes your feature request of throttling rendering is still in our backlog from last year believe it or not! It’s a good idea, what would be the API?
Something like this?
<SciChartSurface MaximumRefreshRateHz="10"/>
I think you can already do this which should reduce CPU load, as it puts the render-thread below the priority of mouse-input.
<SciChartSurface RenderPriority="Low"/>
- Andrew
- Andrew Burnett-Thompson answered 11 years ago
-
Yes, I'm looking for something like MaximumRefreshRateHz or a refresh tick time in seconds. Same with SciChartOverview. In either case (Hz or tick time) it would be nice to use a double rather than an integer to allow fractional values. I don't think that render priority is a suitable replacement for refresh rate limiting. It will still use all available CPU when the incoming data rate is high. We want to be able to run the chart in Silverlight on a tablet computer where the absolute CPU usage is important, not just the relative responsiveness of the mouse vs. the screen refresh.
- You must login to post comments
Please login first to submit.