Exemple #1
0
        public override View GetSampleContent(Context context)
        {
            chart                = new SfChart(context);
            chart.Title.Text     = "Sales Distribution of Car by Region";
            chart.Title.TextSize = 15;
            chart.SetBackgroundColor(Color.White);

            CategoryAxis primaryaxis = new CategoryAxis();

            primaryaxis.ShowMajorGridLines      = false;
            primaryaxis.AxisLineOffset          = 10;
            primaryaxis.PlotOffset              = 10;
            primaryaxis.MajorTickStyle.TickSize = 10;
            primaryaxis.LabelPlacement          = LabelPlacement.BetweenTicks;
            chart.PrimaryAxis = primaryaxis;

            NumericalAxis secondaryAxis = new NumericalAxis();

            secondaryAxis.Minimum  = 15;
            secondaryAxis.Maximum  = 45;
            secondaryAxis.Interval = 5;
            secondaryAxis.LabelStyle.LabelFormat  = "#'%'";
            secondaryAxis.LineStyle.StrokeWidth   = 0;
            secondaryAxis.MajorTickStyle.TickSize = 0;
            chart.SecondaryAxis = secondaryAxis;

            ScatterSeries scatterSeries = new ScatterSeries();

            scatterSeries.ItemsSource             = MainPage.GetErrorBarData();
            scatterSeries.XBindingPath            = "XValue";
            scatterSeries.YBindingPath            = "YValue";
            scatterSeries.ScatterHeight           = 20;
            scatterSeries.ScatterWidth            = 20;
            scatterSeries.ColorModel.ColorPalette = ChartColorPalette.Natural;
            scatterSeries.ShapeType = ChartScatterShapeType.Ellipse;
            chart.Series.Add(scatterSeries);

            errorBar                      = new ErrorBarSeries();
            errorBar.ItemsSource          = MainPage.GetErrorBarData();
            errorBar.XBindingPath         = "XVAlue";
            errorBar.YBindingPath         = "YValue";
            errorBar.HorizontalErrorPath  = "High";
            errorBar.VerticalErrorPath    = "Low";
            errorBar.HorizontalErrorValue = 3;
            errorBar.VerticalErrorValue   = 3;
            errorBar.Type                 = ErrorBarType.Fixed;
            errorBar.Mode                 = ErrorBarMode.Vertical;
            chart.Series.Add(errorBar);
            return(chart);
        }
Exemple #2
0
        public static PlotModel GetErrorBarSeries()
        {
            var model = new PlotModel
            {
                Title = "ErrorBarSeries"
            };

            var l = new Legend
            {
                LegendPlacement       = LegendPlacement.Outside,
                LegendPosition        = LegendPosition.BottomCenter,
                LegendOrientation     = LegendOrientation.Horizontal,
                LegendBorderThickness = 0
            };

            model.Legends.Add(l);

            var s1 = new ErrorBarSeries {
                Title = "Series 1", IsStacked = false, StrokeColor = OxyColors.Black, StrokeThickness = 1
            };

            s1.Items.Add(new ErrorBarItem {
                Value = 25, Error = 2
            });
            s1.Items.Add(new ErrorBarItem {
                Value = 137, Error = 25
            });
            s1.Items.Add(new ErrorBarItem {
                Value = 18, Error = 4
            });
            s1.Items.Add(new ErrorBarItem {
                Value = 40, Error = 29
            });

            var s2 = new ErrorBarSeries {
                Title = "Series 2", IsStacked = false, StrokeColor = OxyColors.Black, StrokeThickness = 1
            };

            s2.Items.Add(new ErrorBarItem {
                Value = 35, Error = 20
            });
            s2.Items.Add(new ErrorBarItem {
                Value = 17, Error = 7
            });
            s2.Items.Add(new ErrorBarItem {
                Value = 118, Error = 44
            });
            s2.Items.Add(new ErrorBarItem {
                Value = 49, Error = 29
            });

            var categoryAxis = new CategoryAxis {
                Position = AxisPosition.Left
            };

            categoryAxis.Labels.Add("Category A");
            categoryAxis.Labels.Add("Category B");
            categoryAxis.Labels.Add("Category C");
            categoryAxis.Labels.Add("Category D");

            var valueAxis = new LinearAxis {
                Position = AxisPosition.Bottom, MinimumPadding = 0, MaximumPadding = 0.06, AbsoluteMinimum = 0
            };

            model.Series.Add(s1);
            model.Series.Add(s2);
            model.Axes.Add(categoryAxis);
            model.Axes.Add(valueAxis);

            return(model);
        }