Hi
I have experienced some rendering issues with data series containing lots of NaN’s.
I have attached a test project and a couple of screenshots / a video.
It is a chart with the following setup:
XAxis = DateTime
YAxis = Numeric
Rendertype = HighQuality
4 FastLineRenderableSeries series
The series are updated 10 times per second with random y values. Some of the values are randomly made NaN’s.
After about 10 – 12 minutes (~6000 datapoints per series) the chart stops showing new data.
Zooming into the chart makes all of the series visible again.
If I lower the frequency of NaN’s the issue appears after a longer time.
If I do not insert NaN values the chart performs as excepted.
The first screenshot is after ~10 – 11 minutes – everything is fine.
The second screenshot is ~2 minute after – it does not render the last part of the series.
The video shows some panning and zooming.
/Flemming
- You must login to post comments
Hi Flemming
I’m betting this is related to this issue which was fixed in SciChart v5.0: https://www.scichart.com/scichart-wpf-v5-released/
Extreme Resamplers & Performance Improvements
Our resampler algorithms have been re-written using C++ for enhanced
resolution, speed and efficiency. Long standing problems solved
include:
- Performance problem when resampling FIFO series / avoiding copy
operation for First-in-first-out buffers.- Resampling accuracy improved
when the data-set includes NaN gaps- Resampling accuracy improved when
the data-set is unevenly spaced in X Resampling accuracy flag- BaseRenderableSeries.ResamplingPrecision allows setting of resolution
for crisper, higher res charts.
To enable this feature, you have to follow the steps here. It is not enabled by default as it requires native code which might cause problems on some machines.
Let me know if this helps!
Best regards,
Andrew
- Andrew Burnett-Thompson answered 6 years ago
- You must login to post comments
Thank you – it solved the rendering issues.
Do you have any info on what impact different ResamplingPrecision values has on the chart performance?
..and what kind of problems could the use of native code give?
/Flemming
- Flemming Rosenbrandt answered 6 years ago
-
Hi Flemming, the only problem in the native code is a possible deployment issue. It affects maybe 0.5% of our customers that there is some restriction on the target PC that cannot run the native code module. There are workarounds but we didn’t want to bring ourselves support issues. Try it – it should work fine. Regarding the performance, native code perf is better than C# perf for resampling. It is also much more accurate. The ResamplingPrecision property basically increases the amount of points drawn on the screen (some overdraw). It’s a logarithmic function so 0 = default 1 = twice the precision, 2 = 4x the precision. If you experience jagged lines or any poor quality rendering try 1 or 2.
- You must login to post comments
Please login first to submit.