SciChart® the market leader in Fast WPF Charts, WPF 3D Charts, and iOS Chart & Android Chart Components
SCIThemeManager.ApplyTheme(Surface, SCIThemeManager.SCIChart_Bright_SparkStyleKey); within a the code-behind running on the iPhoneSimulator running iOS 13.2, the iOS system throws an Objective-C exception with the following details:
Foundation.MonoTouchException: 'Objective-C exception thrown. Name: NSInternalInconsistencyException Reason: applyThemeProvider: must be implemented in subclass
Although the exact same pattern works without issue on the corresponding Xamarin.Android project and the examples that call this line seem to be OK too, it is not clear from any documentation what this issue could be. Any advice would be appreciated.
Let me first describe the issue we have and why I think a possible solution would be to catch the double tap event.
Our chart consists of 6 series. We have an X axis that shows timestamps and 5 Y axis’ for different data like pressure value, temperature, etc. which are of type double. Additionally under the chart we have a legend that displays these 5 Y axis series (one series per one Y axis) with ability to change the visibility of the series and axis.
The problem occurred when as an example, temperature values throughout are constant, e.g. 24.5. The line gets drawn and it is a stable line. Axis is also displayed. However, when a user does the double tap gesture on the chart surface, which usually resets the zoom extents, the axis that has static/non-changing values does some sort of re-initialize animation and after several of double tab gestures only axis label remains (minor and major ticks disappear).
If I could catch the double tap gesture event and override it I could for example say that if the data is static don’t do anything. However, I don’t know where this event is and how to override it.
Any help would be much appreciated.
I am working on Xamarin Android project with C#. Since having a legend within the chart causes problems with too many axis’ (no scrolling is available thus selecting different series in a legend becomes unavailable) and having a legend outside of chart area, anywhere we desire, would be of a preference, is there a tutorial on how could I achieve such a thing? Our project needs this functionality for both Android and iOS.
Would be grateful if anyone could help out with this issue.
Thank you in advance!
We have 2 graph surfaces with 2 Y axes on each side, but the label formatting of the axes is different. That makes the axes widths different and therefore both the graphs appear as they have different widths. Is there a way to make the axis widths fixed so the graphs can be the same size?
We’d like to customize the look of our legends. We have 4 legends displaying different data, but right now the only thing we can change is the Theme. Is there any way to customize the legend items, like add some icons, change the point marker shape and size, change the check box icon etc…
P.S.: I’m not a trial user. We have an iOS, Android and WPF licenses purchased.
We’re trying to make multiple legends on the screen, for example, 1 for the left axis and its data series, 1 for the right axis and its data series. I can see it’s possible in the WPF documentation, but in the iOS documentation it says “Coming soon!”. Do we need to wait for a future release of the Xamarin.iOS library or is it possible somehow now?
By the way, I’m not a trial user. We’ve just purchased a license today.
Dear Support, I have SciChartSurface in fragment (Xamarin Android). I added Xaxis (DateAxis), Yaxis (NumericAxis), standard modifiers and few XyDataSeries as FastLineRenderableSeries. Everything is working fine (screenshot 1). But something strange is happen when fragment with chart is Paused -> Stopped and then Started -> Resumed. Xaxis and Yaxis are not visible. All dataseries are not visible. But I debugged and all data is there. Even rolloverModifier is still working and correct data values are displayed in labels (screenshot 2). It does not happen every time – it depends on what external intent stopped fragment.
I’ve tried reinitialize chart (clear Xaxis, Yaxis, remove modifiers, remove renderableSeries are reinit all with new variables) and it does not help. Only fragment dettach -> attach helps or screen orientantion change (it reinitializes fragment)
Could you tell me any suggestion what can I check or how to force to redraw whole SciChartSurface? (hiding it and showing it does not help – effect is the same. Only fragment dettach and attach helps (this is my workaround at the moment).
I am developing a Xamarin iOS application and I’m using a SCIPieChartSurface. I can create the chart and set its values, but is is not possible to auto-update the donut with new data.
I am trying to update the value by doing:
myDonut.MyPieSegment.Value = newValue;
But nothing happends…
I heard it was a bug in the API for Android a month ago, is this similar? Or am I doing something wrong?
Thanks in advance!
In Xamarin.IOS when you set the legend to Horizontal and Top it will create a legend at the top then allow you to scroll horizontally to see all your LineSeries. In Xamarin.Android when you have more Series than can originally fit on the screen, the legend malfunctions and takes up the entire screen. Picture will be attached.
When i go to zoom on my YAxis while a YAxis VisibleRangeLimit is baing set, the zoom does not work correctly. Once the zooming is finished it will reset back to the range limit. If i remove the range limit, the zooming then works as expected.
I’m trying to use SciChart in my Xamarin Visual Studio Cross platform application. After installing the SciChart package in the Package Manager console I got the dependency reference error:
Package SciChart 18.104.22.16805 was restored using '.NETFramework, Version=v4.6.1' instead of the project target framework 'NETStandard,Version=v2.0'. This papckage may not be fully compatible with your project .
I know that .NET framework 4.6.1 is different from .NETStandard2.0.
I’ve read some articles about how to target multiple .NET versions in the same application by modifying the .csproj file, but I can’t get it work anyway.
I’ve modified the csproj file like this
<PropertyGroup> <TargetFrameworks>netstandard2.0;net461</TargetFrameworks> </PropertyGroup> <ItemGroup Condition="'$(TargetFramework)'=='netstandard2.0'"> <PackageReference Include="Xamarin.Forms" Version="22.214.171.1240555" /> </ItemGroup> <ItemGroup Condition="'$(TargetFramework)' == 'net461'"> <PackageReference Include="SciChart" Version="126.96.36.19905" /> <PackageReference Include="Xamarin.Forms" Version="188.8.131.520555" /> </ItemGroup>
This action removes all dependency errors, but I still can’t use the libraries.
Does anyone know how to solve this issue?
Thanks in advance!
I’m trying to wrap the Scichart surface in XF. I’ve used native views as recommended in documentation and there is no problem when the SciChartSurface is the only element in a ContentPage, but when the surface is placed inside a layout or merged with any other element, then is not rendering.
Do you know why is this happening and how can I merge XF controls and SciChartSurface(s) in a ContentPage or any Layout?
1: This is rendering without problem
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms" xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" xmlns:local="clr-namespace:SciChartForms" xmlns:localAndroid="clr-namespace:SciChartForms.Droid" x:Class="SciChartForms.MainPage"> <localAndroid:Stripchart /> </ContentPage>
2: This is not rendering:
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms" xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" xmlns:local="clr-namespace:SciChartForms" xmlns:localAndroid="clr-namespace:SciChartForms.Droid" x:Class="SciChartForms.MainPage"> <StackLayout Margin="20"> <Button Text="adafsd"/> <localAndroid:Stripchart/> </StackLayout> </ContentPage>
Thanks in advance!
PS: I’ve also tried with custom renderer obtaining the same result.
There’s a build error when implementing IPointMarkerPaletteProvider, IFillPaletteProvider, or IStrokePaletteProvider.
MainActivity_P.java:50: error: isAttached() in MainActivity_P cannot override isAttached() in PaletteProviderBase public boolean isAttached () ^ overridden method is final MainActivity_P.java:58: error: attachTo(IServiceContainer) in MainActivity_P cannot override attachTo(IServiceContainer) in PaletteProviderBase public void attachTo (com.scichart.core.IServiceContainer p0) ^ overridden method is final MainActivity_P.java:66: error: detach() in MainActivity_P cannot override detach() in PaletteProviderBase public void detach () ^ overridden method is fina
What’s wrong with it? See the attached project to reproduce the issue.
How to achieve per-point shapes? I need to have, say, triangle, ellipse, and square shapes on a single line series. It’s pretty straightforward for iOS by overriding the StyleForPoint() method and providing shapes and colors. However, I had hard times figuring it out for Android (Xamarin). I found how to change colors of markers but not shapes. Could anyone help me with this, please?
I am using SCICHART in my project on Xamarin.Android, but the default them show some themes but I would like to change the background grid color of the reports. Please any can help me ?.
Trying to install SciChart.iOS NuGet package for Xamarin.iOS project results the following error:
Package SciChart.iOS 184.108.40.2067 is not compatible with xamarinios10 (Xamarin.iOS,Version=v1.0). Package SciChart.iOS 220.127.116.117 supports: xamarinios (xamarin-ios,Version=v0.0)
Wondering what the heck is “xamarin-ios,Version=v0.0”? It must be xamarinios10. We’re considering to buy SciChart but right now our build server is stuck on this error. As a workaround, we raname xamarin-ios to xamarinios10 in the lib directory but this not an option for a cloud build server.
I found this through the forum:
Seems you looked at Xamarin at one time or another, is there a plan to support this platform at some point in the future?