protected override void OnRestoreInstanceState(Android.OS.Bundle savedInstanceState)
 {
     base.OnRestoreInstanceState(savedInstanceState);
     mDataset = savedInstanceState.GetSerializable("dataset") as XYMultipleSeriesDataset;
     mRenderer = savedInstanceState.GetSerializable("renderer") as XYMultipleSeriesRenderer;
     mCurrentSeries = savedInstanceState.GetSerializable("current_series") as XYSeries;
     mCurrentRenderer = savedInstanceState.GetSerializable("current_renderer") as XYSeriesRenderer;
 }
 protected void SetChartSettings(XYMultipleSeriesRenderer renderer, String title, String xTitle,
     String yTitle, double xMin, double xMax, double yMin, double yMax, int axesColor, int labelsColor)
 {
     renderer.ChartTitle = title;
     renderer.XTitle = xTitle;
     renderer.YTitle = yTitle;
     renderer.XAxisMin = xMin;
     renderer.XAxisMax = xMax;
     renderer.YAxisMin = yMin;
     renderer.YAxisMax = yMax;
     renderer.AxesColor = axesColor;
     renderer.LabelsColor = labelsColor;
 }
        public override Android.Content.Intent Execute(Android.Content.Context context)
        {
            String[] titles = new String[] { "Air temperature" };
            IList<double[]> x = new List<double[]>();
            for (int i = 0; i < titles.Length; i++)
            {
                x.Add(new double[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 });
            }
            IList<double[]> values = new List<double[]>();
            values.Add(new double[] { 12.3, 12.5, 13.8, 16.8, 20.4, 24.4, 26.4, 26.1, 23.6, 20.3, 17.2, 13.9 });
            int[] colors = new int[] { Color.Blue, Color.Yellow };
            PointStyle[] styles = new PointStyle[] { PointStyle.Point, PointStyle.Point };
            XYMultipleSeriesRenderer renderer = new XYMultipleSeriesRenderer(2);
            SetRenderer(renderer, colors, styles);
            int length = renderer.SeriesRendererCount;
            for (int i = 0; i < length; i++)
            {
                XYSeriesRenderer r = (XYSeriesRenderer)renderer.GetSeriesRendererAt(i);
                r.LineWidth = 3f;
            }
            SetChartSettings(renderer, "Average temperaturs", "Month", "Temperature", 0.5, 12.5, 0, 32, Color.LightGray, Color.LightGray);
            renderer.XLabels = 12;
            renderer.YLabels = 10;
            renderer.SetShowGrid(true);
            renderer.XLabelsAlign = Android.Graphics.Paint.Align.Right;
            renderer.SetYLabelsAlign(Android.Graphics.Paint.Align.Right);
            renderer.ZoomButtonsVisible = true;
            renderer.SetPanLimits(new double[] { -10, 20, -10, 40 });
            renderer.SetZoomLimits(new double[] { -10, 20, -10, 40 });
            renderer.ZoomRate = 1f;
            renderer.LabelsColor = Color.White;
            renderer.XLabelsColor = Color.Green;
            renderer.SetYLabelsColor(0, colors[0]);
            renderer.SetYLabelsColor(0, colors[1]);

            renderer.SetYTitle("Hours", 1);
            renderer.SetYAxisAlign(Android.Graphics.Paint.Align.Right, 1);
            renderer.SetYLabelsAlign(Android.Graphics.Paint.Align.Left, 1);

            XYMultipleSeriesDataset dataset = BuildDataset(titles, x, values);
            values.Clear();
            values.Add(new double[] { 4.3, 4.9, 5.9, 8.8, 10.8, 11.9, 13.6, 12.8, 11.4, 9.5, 7.5, 5.5 });
            AddXYSeries(dataset, new string[] { "Sunshine hours" }, x, values, 1);

            Intent intent = ChartFactory.GetCubicLineChartIntent(context, dataset, renderer, 0.3f, "Average temperature");
            return intent;
        }
 protected void SetRenderer(XYMultipleSeriesRenderer renderer, int[] colors, PointStyle[] styles)
 {
     renderer.AxisTitleTextSize = 16;
     renderer.ChartTitleTextSize = 20;
     renderer.LabelsTextSize = 15;
     renderer.LegendTextSize = 15;
     renderer.PointSize = 5f;
     renderer.SetMargins(new[] { 20, 30, 15, 20 });
     int length = colors.Length;
     for (int i = 0; i < length; i++)
     {
         XYSeriesRenderer r = new XYSeriesRenderer();
         r.Color = colors[i];
         r.PointStyle = styles[i];
         renderer.AddSeriesRenderer(r);
     }
 }
        public override Android.Content.Intent Execute(Android.Content.Context context)
        {
            XYMultipleSeriesDataset series = new XYMultipleSeriesDataset();
            XYValueSeries newTicketSeries = new XYValueSeries("New Tickets");
            newTicketSeries.Add(1f, 2, 14);
            newTicketSeries.Add(2f, 2, 12);
            newTicketSeries.Add(3f, 2, 18);
            newTicketSeries.Add(4f, 2, 5);
            newTicketSeries.Add(5f, 2, 1);
            series.AddSeries(newTicketSeries);
            XYValueSeries fixedTicketSeries = new XYValueSeries("Fixed Tickets");
            fixedTicketSeries.Add(1f, 1, 7);
            fixedTicketSeries.Add(2f, 1, 4);
            fixedTicketSeries.Add(3f, 1, 18);
            fixedTicketSeries.Add(4f, 1, 3);
            fixedTicketSeries.Add(5f, 1, 1);
            series.AddSeries(fixedTicketSeries);

            XYMultipleSeriesRenderer renderer = new XYMultipleSeriesRenderer();
            renderer.AxisTitleTextSize = 16;
            renderer.ChartTitleTextSize = 20;
            renderer.LabelsTextSize = 15;
            renderer.LegendTextSize = 15;
            renderer.SetMargins(new int[] { 20, 30, 15, 0 });
            XYSeriesRenderer newTicketRenderer = new XYSeriesRenderer();
            newTicketRenderer.Color = Color.Blue;
            renderer.AddSeriesRenderer(newTicketRenderer);
            XYSeriesRenderer fixedTicketRenderer = new XYSeriesRenderer();
            fixedTicketRenderer.Color = Color.Green;
            renderer.AddSeriesRenderer(fixedTicketRenderer);

            SetChartSettings(renderer, "Project work status", "Priority", "", 0.5, 5.5, 0, 5, Color.Gray, Color.LightGray);
            renderer.XLabels = 7;
            renderer.YLabels = 0;
            renderer.SetShowGrid(false);
            return ChartFactory.GetBubbleChartIntent(context, series, renderer, "Project tickets");
        }
 protected XYMultipleSeriesRenderer BuildRenderer(int[] colors, PointStyle[] styles)
 {
     XYMultipleSeriesRenderer renderer = new XYMultipleSeriesRenderer();
     SetRenderer(renderer, colors, styles);
     return renderer;
 }
 protected XYMultipleSeriesRenderer BuildBarRenderer(int[] colors)
 {
     XYMultipleSeriesRenderer renderer = new XYMultipleSeriesRenderer();
     renderer.AxisTitleTextSize = 16;
     renderer.ChartTitleTextSize = 20;
     renderer.LabelsTextSize = 15;
     renderer.LegendTextSize = 15;
     int length = colors.Length;
     for (int i = 0; i < length; i++)
     {
         SimpleSeriesRenderer r = new SimpleSeriesRenderer();
         r.Color = colors[i];
         renderer.AddSeriesRenderer(r);
     }
     return renderer;
 }
 private void SetChartSettings(XYMultipleSeriesRenderer renderer)
 {
     renderer.ChartTitle = "Chart demo";
     renderer.XTitle = "x values";
     renderer.YTitle = "y values";
     renderer.XAxisMin = 0.5;
     renderer.XAxisMax = 10.5;
     renderer.YAxisMin = 0;
     renderer.YAxisMax = 210;
 }
 public XYMultipleSeriesRenderer GetBarDemoRenderer()
 {
     XYMultipleSeriesRenderer renderer = new XYMultipleSeriesRenderer();
     renderer.AxisTitleTextSize = 16;
     renderer.ChartTitleTextSize = 20;
     renderer.LabelsTextSize = 15;
     renderer.LegendTextSize = 15;
     renderer.SetMargins(new int[] { 20, 30, 15, 0 });
     SimpleSeriesRenderer r = new SimpleSeriesRenderer();
     r.Color = Color.Blue;
     renderer.AddSeriesRenderer(r);
     r = new SimpleSeriesRenderer();
     r.Color = Color.Green;
     renderer.AddSeriesRenderer(r);
     return renderer;
 }
 private XYMultipleSeriesRenderer GetDemoRenderer()
 {
     XYMultipleSeriesRenderer renderer = new XYMultipleSeriesRenderer();
     renderer.AxisTitleTextSize = 16;
     renderer.ChartTitleTextSize = 20;
     renderer.LabelsTextSize = 15;
     renderer.LegendTextSize = 15;
     renderer.PointSize = 5f;
     renderer.SetMargins(new int[] { 20, 30, 15, 0 });
     XYSeriesRenderer r = new XYSeriesRenderer();
     r.Color = Color.Blue;
     r.PointStyle = PointStyle.Square;
     r.FillBelowLine = true;
     r.SetFillBelowLineColor(Color.White);
     r.FillPoints = true;
     renderer.AddSeriesRenderer(r);
     r = new XYSeriesRenderer();
     r.PointStyle = PointStyle.Circle;
     r.Color = Color.Green;
     r.FillPoints = true;
     renderer.AddSeriesRenderer(r);
     renderer.AxesColor = Color.DarkGray;
     renderer.LabelsColor = Color.LightGray;
     return renderer;
 }