SciChart® the market leader in Fast WPF Charts, WPF 3D Charts, and iOS Chart & Android Chart Components
Thank you for creating great chart library.
I’m now using a trial version for test that is enable to use at project that I’m concerned.
I have one problem that when I set zoom function to chart, and zoomed too much, axis label disappears.
(I used mouse scroll zoom, I attached zoom before image and after image)
How can I control this problem?
Is there any properties or setting for this?
In SciChart v18.104.22.16835 in our Nightly Build feed, we now have a new feature which allows very high precision axis when values are very small.
Using the version above (or later), try apply this code to your Axis:
numericAxis.TickProvider = new HighPrecisionNumericTickProvider();
This has been tested and can be used to zoom many orders of magnitude smaller than 1E-12 on the NumericAxis.
Thank you for your quick response.
a.) What version of SciChart are you using?
.NET Framework 4.0
b.) What is the Min, Max value of YAxis.VisibleRange when this problem occurs?
I used mouse scroll zoom to check it.
[YAxis view OK]
before this, YAxis shows the label.
[YAxis view NG]
after this, YAxis label disappears.
(Value little bit changes for each zoom and unzoom action)
For our applicaiton and project, We want to use around at 1E-15 for minimal.
Thank you for the additional information.
Unfortunately, SciChart is only able to zoom until the X or Y Axis VisibleRange Max-Min is approximately 1E-12.
This is because all calculations within SciChart are done using 64-bit Double precision variables, and the limit of precision for Double in C# .NET is 15-16 decimal places. We need some precision to do the calculations so we have found that SciChart is usually stable up to VisibleRange Max-Min = 1E-12 but not smaller than that.
There is no 80 or 128-bit Long Double type in C#, only in C++. There is 128-bit Decimal type but this is not a floating point number type and it cannot hold the same dynamic range as C# Double can, so it is not possible to perform our calculations internally with Decimal.
Unfortunately we don’t have a workaround to zoom deeper than 1E-12. Scaling your data won’t work as you run in to the same problem – the limit of precision of C# Double type.
Sorry I can’t be more help at this time,
Please login first to submit.