An exception is thrown on Android when this code is executed
this.chart1.VerticalAxis = new NumericalAxis { Minimum = 300, Maximum = 400 };
this.chart1.VerticalAxis = new NumericalAxis { Minimum = 100, Maximum = 200 };
Hi Team,
If you set the PanOffset in XAML, it is not applied.
Does not work:
<telerikChart:RadCartesianChart x:Name="MyChart" Zoom="2, 1" PanOffset="-400,0" >
I would expect that the RadChartView renderer would be responsible for handling this after the control is loaded and the series/axis is rendered (see workaround).
If I subscribe to the ChartView's NativeControlLoaded event and wait approx 100ms before calling PanOffset, it will work.
e.g.
<telerikChart:RadCartesianChart x:Name="MyChart" Zoom="2, 1"
NativeControlLoaded="MyChart_OnNativeControlLoaded">
private async void MyChart_OnNativeControlLoaded(object sender, EventArgs e)
{
await Task.Delay(100);
MyChart.PanOffset = new Point(-400, 0);
}
The takeaway, and basis of this Bug Report, is that the control should internally perform this delay check and set the PanOffset.
This will enable MVVM scenarios because (I originally wanted to bind the PanOffset value from my view model).
Thank you,
Ramakant
When you have a Chart instance with fixed size and it's larger than the screen size, the Chart is not rendered and the following error is displayed in the VS output:
"RadExtendedCartesianChartView not displayed because it is too large to fit into a software layer (or drawing cache)"
If you have the following PieChart with donut series definition:
<telerikChart:RadPieChart HeightRequest="200"
WidthRequest="200">
<telerikChart:RadPieChart.Series>
<telerikChart:DonutSeries ShowLabels="True"
ValueBinding="Value"
ItemsSource="{Binding Data}" />
<telerikChart:DonutSeries ShowLabels="True"
RadiusFactor="0.45"
ValueBinding="Value"
ItemsSource="{Binding Data1}" />
</telerikChart:RadPieChart.Series>
</telerikChart:RadPieChart>
On android works as expected:
On iOS the series are overlapped and not visualized as expected. The radius factor is not respected
On UWP the second donut series in not visualized and the radius factor is not respected.
After setting the MajorLinesVisibility property to GridLineVisibility.Xy only the Y lines are showing up.
If the series is added after the page constructor, the vertical axis labels are not shown. As a workaround, create the series in the constructor and set its ItemsSource at a later stage.
As of the latest release (10/04/2019) RadPieChart with a PieSeries having LabelBinding set to a property name, and ShowLabels set to True, with the list of data bound to ItemsSource containing one or more empty pie slices (a null in the list), causes a System.Reflection.TargetException to be thrown on load of the page containing the chart in iOS (this scenario works fine in UWP).
I am using the latest available Visual Studio 2019 (16.3.5) and the latest available Xamarin.Forms package (4.2.0.848062) and testing on an iPad with iOS 13.1. The reason I need to have a null value in the list is so that the custom color palette I'm applying will always apply the same colors to the same data points (pie slices), even though in some cases, zero or one or two of the three pie slices will have no data value (and so should not appear in the chart, but still "use up" the corresponding color in the 3 colors of the palette).
In the 08/02/2019 release, this scenario worked fine in iOS (the 09/13/2019 release had the https://feedback.telerik.com/xamarin/1431067-chart-ios-invalidcastexception-is-thrown-when-the-chart-is-loaded issue, which is now resolved in the 10/04/2019 release, but which prevented my testing in iOS since in my app I had RadCartesianCharts on the same pages as the RadPieCharts).
The newly broken functionality in iOS could possibly be related to two other items that are marked completed:
https://feedback.telerik.com/xamarin/1366403-piechart-tooltip-behavior-is-not-working-properly (in 10/04/2019 release)
https://feedback.telerik.com/xamarin/1365842-chart-null-value-support (in R3 2018 SP release)