Exemplo n.º 1
0
       public override View GetSampleContent(Context context)
        {
            var chart = new SfChart(context);;
            chart.SetBackgroundColor(Color.White);
            chart.Legend.ToggleSeriesVisibility = true;

            var dateAxis = new DateTimeAxis
            {
                EdgeLabelsDrawingMode = EdgeLabelsDrawingMode.Shift,
                LabelRotationAngle = -45,
            };
            dateAxis.LabelStyle.LabelFormat = "MM/dd/yyyy";

            chart.PrimaryAxis = dateAxis;
            dateAxis.Title.Text = "DateTime Axis";

            var numericalAxis = new NumericalAxis();
            numericalAxis.Title.Text = "Numerical Axis";
            chart.SecondaryAxis = numericalAxis;

            chart.Series.Add(new ColumnSeries
            {
                Label = "Column Series",
                DataSource = MainPage.GetDateTimValue(),
            });

            return chart;
        }
Exemplo n.º 2
0
        private void GetSalseDevationChart(Context context)
        {
            salesDeviationChart                = new SfChart(context);
            salesDeviationChart.Title.Text     = "Average Sales Comparison";
            salesDeviationChart.Title.TextSize = 15;
            salesDeviationChart.SetBackgroundColor(Color.White);
            salesDeviationChart.ColorModel.ColorPalette = ChartColorPalette.Natural;
            DateTimeAxis primaryAxis = new DateTimeAxis();

            primaryAxis.Title.Text                 = "Months";
            primaryAxis.ShowMinorGridLines         = false;
            primaryAxis.ShowMinorGridLines         = false;
            primaryAxis.IntervalType               = DateTimeIntervalType.Months;
            primaryAxis.Interval                   = 1;
            primaryAxis.MajorTickStyle.StrokeWidth = 0;
            primaryAxis.LabelStyle.LabelFormat     = "MMM";
            salesDeviationChart.PrimaryAxis        = primaryAxis;

            numericalaxis = new NumericalAxis();
            numericalaxis.LineStyle.StrokeWidth   = 0;
            numericalaxis.MajorTickStyle.TickSize = 0;
            numericalaxis.Title.Text            = "Number of Customer";
            numericalaxis.LineStyle.StrokeColor = Color.Transparent;
            salesDeviationChart.SecondaryAxis   = numericalaxis;

            salesColumnSeries = new ColumnSeries();
            salesColumnSeries.XBindingPath = "Date";
            salesColumnSeries.YBindingPath = "YValue";
            salesColumnSeries.ItemsSource  = MainPage.GetTrendlineDataSource("Linear");
            salesColumnSeries.Label        = "Sales";
            salesColumnSeries.LegendIcon   = ChartLegendIcon.SeriesType;
            salesDeviationChart.Series.Add(salesColumnSeries);

            linearTrendline = new ChartTrendline()
            {
                Type        = ChartTrendlineType.Linear,
                StrokeColor = new Color(64, 64, 65),
                Label       = "Linear",
            };

            salesColumnSeries.Trendlines = new ChartTrendlineCollection()
            {
                linearTrendline
            };
        }
Exemplo n.º 3
0
        public override View GetSampleContent(Context context)
        {
            var chart = new SfChart(context);

            chart.SetBackgroundColor(Color.White);
            chart.Title.Text     = "Financial Analysis";
            chart.Title.TextSize = 15;

            DateTimeAxis dateTimeAxis = new DateTimeAxis();

            dateTimeAxis.LabelStyle.LabelFormat = "MM/dd/yyyy";
            dateTimeAxis.LabelRotationAngle     = -45;
            dateTimeAxis.Title.Text             = "Date";
            chart.PrimaryAxis = dateTimeAxis;

            NumericalAxis numericalAxis = new NumericalAxis();

            numericalAxis.Title.Text             = "Price in Dollar";
            numericalAxis.Minimum                = 0;
            numericalAxis.Maximum                = 250;
            numericalAxis.Interval               = 50;
            numericalAxis.LabelStyle.LabelFormat = "$##.##";
            chart.SecondaryAxis = numericalAxis;

            chart.Series.Add(new HiLoOpenCloseSeries
            {
                StrokeWidth     = 5,
                ItemsSource     = MainPage.GetOhlcData(),
                XBindingPath    = "XValue",
                Open            = "Open",
                Close           = "Close",
                High            = "High",
                Low             = "Low",
                TooltipEnabled  = true,
                EnableAnimation = true,
            });
            return(chart);
        }
Exemplo n.º 4
0
        public override View GetSampleContent(Context context)
        {
            chart = new SfChart(context);
            chart.SetBackgroundColor(Color.White);
            chart.Title.Text     = "Foreign Exchange Rate Analysis";
            chart.Title.TextSize = 15;
            DateTimeAxis dateTimeAxis = new DateTimeAxis();

            dateTimeAxis.LabelRotationAngle     = -45;
            dateTimeAxis.LabelStyle.LabelFormat = "MM/dd/yyyy";
            dateTimeAxis.Title.Text             = "Date";
            chart.PrimaryAxis = dateTimeAxis;

            NumericalAxis numericalAxis = new NumericalAxis();

            numericalAxis.Title.Text             = "Price in Dollar";
            numericalAxis.Minimum                = 0;
            numericalAxis.Maximum                = 250;
            numericalAxis.Interval               = 50;
            numericalAxis.LabelStyle.LabelFormat = "$##.##";
            chart.SecondaryAxis = numericalAxis;

            CandleSeries candleSeries = new CandleSeries();

            candleSeries.ItemsSource     = MainPage.GetCandleData();
            candleSeries.XBindingPath    = "XValue";
            candleSeries.Open            = "Open";
            candleSeries.Close           = "Close";
            candleSeries.High            = "High";
            candleSeries.Low             = "Low";
            candleSeries.TooltipEnabled  = true;
            candleSeries.EnableAnimation = true;

            chart.Series.Add(candleSeries);

            return(chart);
        }
Exemplo n.º 5
0
        public override View GetSampleContent(Context context)
        {
            var chart = new SfChart(context);

            chart.Title.Text = "Food Production - 2017";
            chart.SetBackgroundColor(Color.White);
            chart.Scroll += (sender, e) =>
            {
                month = int.MaxValue;
            };

            DateTimeAxis dateTimeAxis = new DateTimeAxis();

            dateTimeAxis.Title.Text    = "Production Across Years";
            dateTimeAxis.ZoomFactor    = 0.2f;
            dateTimeAxis.ZoomPosition  = 0.6f;
            dateTimeAxis.LabelCreated += (sender, e) =>
            {
                var date = DateTime.Parse(e.AxisLabel.LabelContent.ToString());
                if (date.Month != month)
                {
                    ChartAxisLabelStyle labelStyle = new ChartAxisLabelStyle();
                    labelStyle.LabelFormat = "MMM-dd";
                    labelStyle.TextSize    = 9;
                    labelStyle.Typeface    = Typeface.DefaultBold;
                    e.AxisLabel.LabelStyle = labelStyle;
                    month = date.Month;
                }
                else
                {
                    ChartAxisLabelStyle labelStyle = new ChartAxisLabelStyle();
                    labelStyle.LabelFormat = "dd";
                    e.AxisLabel.LabelStyle = labelStyle;
                }
            };
            dateTimeAxis.EdgeLabelsDrawingMode = EdgeLabelsDrawingMode.Shift;
            chart.PrimaryAxis = dateTimeAxis;

            var numericalAxis = new NumericalAxis();

            numericalAxis.Title.Text = "Growth (In Metric Tons)";
            chart.SecondaryAxis      = numericalAxis;

            FastLineSeries lineSeries = new FastLineSeries();

            lineSeries.ColorModel.ColorPalette = ChartColorPalette.Natural;
            lineSeries.ItemsSource             = Data.GetDateTimeValue();
            lineSeries.XBindingPath            = "Date";
            lineSeries.YBindingPath            = "YValue";
            lineSeries.TooltipEnabled          = true;
            chart.Series.Add(lineSeries);

            ChartZoomPanBehavior zoomPan = new ChartZoomPanBehavior();

            zoomPan.SelectionZoomingEnabled = false;
            zoomPan.ZoomMode = ZoomMode.X;

            chart.Behaviors.Add(zoomPan);

            return(chart);
        }
Exemplo n.º 6
0
        public override View GetSampleContent(Context context)
        {
            chart            = new SfChart(context);
            chart.Title.Text = "Oxygen Level";
            chart.SetBackgroundColor(Color.White);

            chart.ColorModel.ColorPalette = ChartColorPalette.Custom;

            ChartGradientColor gradientColor = new ChartGradientColor()
            {
                StartPoint = new PointF(0.5f, 1), EndPoint = new PointF(0.5f, 0)
            };
            ChartGradientStop stopColor1 = new ChartGradientStop()
            {
                Color = Color.White, Offset = 0
            };
            ChartGradientStop stopColor2 = new ChartGradientStop()
            {
                Color = Color.ParseColor("#FF0080DF"), Offset = 1
            };

            gradientColor.GradientStops.Add(stopColor1);
            gradientColor.GradientStops.Add(stopColor2);

            ChartGradientColorCollection gradientColorsCollection = new ChartGradientColorCollection()
            {
                gradientColor
            };

            chart.ColorModel.CustomGradientColors = gradientColorsCollection;

            DateTimeAxis primaryAxis = new DateTimeAxis();

            primaryAxis.PlotOffset             = 6;
            primaryAxis.EdgeLabelsDrawingMode  = EdgeLabelsDrawingMode.Shift;
            primaryAxis.ShowMinorGridLines     = false;
            primaryAxis.ShowMajorGridLines     = false;
            primaryAxis.LabelStyle.LabelFormat = "MMM dd";
            chart.PrimaryAxis = primaryAxis;

            NumericalAxis numericalAxis = new NumericalAxis();

            numericalAxis.Maximum  = 50;
            numericalAxis.Interval = 5;
            numericalAxis.LabelStyle.LabelFormat = "#'%'";
            chart.SecondaryAxis = numericalAxis;

            SplineAreaSeries splineAreaSeries = new SplineAreaSeries();

            splineAreaSeries.ItemsSource                           = MainPage.GetGradientData();
            splineAreaSeries.XBindingPath                          = "Date";
            splineAreaSeries.YBindingPath                          = "High";
            splineAreaSeries.StrokeColor                           = Color.ParseColor("#FF0080DF");
            splineAreaSeries.StrokeWidth                           = 2;
            splineAreaSeries.DataMarker.ShowLabel                  = true;
            splineAreaSeries.DataMarker.MarkerWidth                = 8;
            splineAreaSeries.DataMarker.MarkerHeight               = 8;
            splineAreaSeries.DataMarker.MarkerColor                = Color.White;
            splineAreaSeries.DataMarker.MarkerStrokeColor          = Color.ParseColor("#FF0080DF");
            splineAreaSeries.DataMarker.MarkerStrokeWidth          = 2;
            splineAreaSeries.DataMarker.ShowMarker                 = true;
            splineAreaSeries.DataMarker.LabelStyle.OffsetY         = -10;
            splineAreaSeries.DataMarker.LabelStyle.BackgroundColor = Color.ParseColor("#FF0080DF");
            splineAreaSeries.DataMarker.LabelStyle.LabelFormat     = "#.#'%'";

            chart.Series.Add(splineAreaSeries);
            return(chart);
        }
Exemplo n.º 7
0
        public override View GetSampleContent(Context context)
        {
            chart = new SfChart(context);
            chart.SetBackgroundColor(Color.White);
            chart.Title.Text = "Average sales for person";

            chart.Legend.Visibility   = Visibility.Visible;
            chart.Legend.DockPosition = ChartDock.Bottom;
            chart.Legend.IconHeight   = 14;
            chart.Legend.IconWidth    = 14;

            DateTimeAxis primaryAxis = new DateTimeAxis();

            primaryAxis.PlotOffset               = 5;
            primaryAxis.AxisLineOffset           = 5;
            primaryAxis.ShowMajorGridLines       = false;
            primaryAxis.Interval                 = 1;
            primaryAxis.EdgeLabelsDrawingMode    = EdgeLabelsDrawingMode.Shift;
            primaryAxis.EdgeLabelsVisibilityMode = EdgeLabelsVisibilityMode.Visible;
            primaryAxis.LabelStyle.LabelFormat   = "yyyy";
            chart.PrimaryAxis = primaryAxis;
            chart.PrimaryAxis.ShowMajorGridLines = false;
            chart.SecondaryAxis = new NumericalAxis {
            };

            chart.SecondaryAxis.MajorTickStyle.TickSize     = 0;
            chart.SecondaryAxis.LineStyle.StrokeWidth       = 0;
            (chart.SecondaryAxis as NumericalAxis).Maximum  = 80;
            (chart.SecondaryAxis as NumericalAxis).Minimum  = 10;
            (chart.SecondaryAxis as NumericalAxis).Interval = 10;
            chart.SecondaryAxis.Title.Text             = "Revenue";
            chart.SecondaryAxis.LabelStyle.LabelFormat = "#'M '";

            var series = new LineSeries
            {
                ItemsSource  = MainPage.GetSeriesData1(),
                XBindingPath = "Date",
                YBindingPath = "YValue",
                Label        = "John",
                Color        = Color.ParseColor("#00BDAE"),
                StrokeWidth  = 3
            };

            series.DataMarker.MarkerStrokeColor = Color.ParseColor("#00BDAE");
            series.DataMarker.ShowMarker        = true;
            series.DataMarker.MarkerColor       = Color.White;
            series.DataMarker.MarkerStrokeWidth = 2;
            series.DataMarker.MarkerWidth       = 6;
            series.DataMarker.MarkerHeight      = 6;
            chart.Series.Add(series);

            series = new LineSeries
            {
                ItemsSource  = MainPage.GetSeriesData2(),
                XBindingPath = "Date",
                YBindingPath = "YValue",
                Color        = Color.ParseColor("#404041"),
                Label        = "Andrew",
                StrokeWidth  = 3
            };
            series.DataMarker.MarkerStrokeColor = Color.ParseColor("#404041");
            series.DataMarker.ShowMarker        = true;
            series.DataMarker.MarkerColor       = Color.White;
            series.DataMarker.MarkerStrokeWidth = 2;
            series.DataMarker.MarkerWidth       = 6;
            series.DataMarker.MarkerHeight      = 6;
            chart.Series.Add(series);

            series = new LineSeries
            {
                ItemsSource  = MainPage.GetSeriesData3(),
                XBindingPath = "Date",
                YBindingPath = "YValue",
                Color        = Color.ParseColor("#357CD2"),
                Label        = "Thomas",
                StrokeWidth  = 3
            };
            series.DataMarker.MarkerStrokeColor = Color.ParseColor("#357CD2");
            series.DataMarker.ShowMarker        = true;
            series.DataMarker.MarkerColor       = Color.White;
            series.DataMarker.MarkerStrokeWidth = 2;
            series.DataMarker.MarkerWidth       = 6;
            series.DataMarker.MarkerHeight      = 6;
            chart.Series.Add(series);

            chart.Behaviors.Add(new ChartTrackballBehavior());

            var label = new TextView(context);

            label.SetPadding(5, 5, 5, 5);
            label.Text = "Press and hold to enable trackball.";

            var layout = new LinearLayout(context)
            {
                Orientation = Android.Widget.Orientation.Vertical
            };

            var layoutLabel = new LinearLayout(context)
            {
                Orientation      = Android.Widget.Orientation.Horizontal,
                LayoutParameters =
                    new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MatchParent, ViewGroup.LayoutParams.WrapContent)
            };

            layoutLabel.SetHorizontalGravity(GravityFlags.CenterHorizontal);
            layoutLabel.AddView(label);

            layout.AddView(layoutLabel);
            layout.AddView(chart);

            return(layout);
        }
Exemplo n.º 8
0
        public override View GetSampleContent(Context context)
        {
            chart = new SfChart(context);
            chart.SetPadding(0, 10, 0, 0);
            chart.Behaviors.Add(new ChartTrackballBehavior());
            DateTimeAxis dateTimeAxis = new DateTimeAxis();

            dateTimeAxis.LabelStyle.LabelFormat = "MM/yyyy";
            chart.PrimaryAxis = dateTimeAxis;


            NumericalAxis numericalAxis = new NumericalAxis();

            chart.SecondaryAxis = numericalAxis;

            HiLoOpenCloseSeries candleSeries = new HiLoOpenCloseSeries();

            candleSeries.ItemsSource     = MainPage.GetTechnicalIndicatorData();
            candleSeries.XBindingPath    = "XValue";
            candleSeries.Open            = "Open";
            candleSeries.Close           = "Close";
            candleSeries.High            = "High";
            candleSeries.Low             = "Low";
            candleSeries.EnableAnimation = true;
            candleSeries.Name            = "Series";
            chart.Series.Add(candleSeries);

            SimpleMovingAverageIndicator sMA = new SimpleMovingAverageIndicator();

            sMA.SeriesName      = "Series";
            sMA.XBindingPath    = "XValue";
            sMA.Open            = "Open";
            sMA.Close           = "Close";
            sMA.High            = "High";
            sMA.Low             = "Low";
            sMA.EnableAnimation = true;
            chart.TechnicalIndicators.Add(sMA);

            TextView labelDisplayMode = new TextView(context);

            labelDisplayMode.TextSize = 20;
            labelDisplayMode.Text     = "Technical Indicator type";

            Spinner selectLabelMode = new Spinner(context, SpinnerMode.Dialog);

            adapter = new List <String>()
            {
                "Simple Moving Average Indicator", "Average True Indicator", "Exponential Moving Averge Indicator", "Momentum Indicator",
                "Accumulation Distribution Indicator", "RSI Indicator", "Triangular Moving Average Indicator",
                "MACD Indicator", "Stochastic Indicator", "Bollinger Band Indicator"
            };

            ArrayAdapter <String> dataAdapter = new ArrayAdapter <String>
                                                    (context, Android.Resource.Layout.SimpleSpinnerItem, adapter);

            dataAdapter.SetDropDownViewResource(Android.Resource.Layout.SimpleDropDownItem1Line);
            selectLabelMode.Adapter       = dataAdapter;
            selectLabelMode.ItemSelected += SelectLabelMode_ItemSelected;

            LinearLayout linearLayout = new LinearLayout(context);

            linearLayout.SetPadding(20, 0, 20, 30);
            linearLayout.SetBackgroundColor(Color.Rgb(236, 235, 242));
            linearLayout.LayoutParameters = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WrapContent,
                                                                          LinearLayout.LayoutParams.WrapContent);
            linearLayout.Orientation = Orientation.Vertical;
            linearLayout.SetBackgroundColor(Color.White);
            linearLayout.AddView(selectLabelMode);
            linearLayout.AddView(chart);
            return(linearLayout);
        }