public override Android.Content.Intent Execute(Android.Content.Context context)
        {
            double[] minValues = new double[] { -24, -19, -10, -1, 7, 12, 15, 14, 9, 1, -11, -16 };
            double[] maxValues = new double[] { 7, 12, 24, 28, 33, 35, 37, 36, 28, 19, 11, 4 };

            XYMultipleSeriesDataset dataset = new XYMultipleSeriesDataset();
            RangeCategorySeries     series  = new RangeCategorySeries("Temperature");
            int length = minValues.Length;

            for (int k = 0; k < length; k++)
            {
                series.Add(minValues[k], maxValues[k]);
            }
            dataset.AddSeries(series.ToXYSeries());
            int[] colors = new int[] { Color.Cyan };
            XYMultipleSeriesRenderer renderer = BuildBarRenderer(colors);

            SetChartSettings(renderer, "Monthly temperature range", "Month", "Celsius degrees", 0.5, 12.5, -30, 45, Color.Gray, Color.LightGray);
            renderer.BarSpacing = 0.5;
            renderer.XLabels    = 0;
            renderer.YLabels    = 10;
            renderer.AddXTextLabel(1, "Jan");
            renderer.AddXTextLabel(3, "Mar");
            renderer.AddXTextLabel(5, "May");
            renderer.AddXTextLabel(7, "Jul");
            renderer.AddXTextLabel(10, "Oct");
            renderer.AddXTextLabel(12, "Dec");
            renderer.AddYTextLabel(-25, "Very cold");
            renderer.AddYTextLabel(-10, "Cold");
            renderer.AddYTextLabel(5, "OK");
            renderer.AddYTextLabel(20, "Noci");
            renderer.SetMargins(new int[] { 30, 70, 10, 0 });
            renderer.SetYLabelsAlign(Android.Graphics.Paint.Align.Right);
            SimpleSeriesRenderer r = renderer.GetSeriesRendererAt(0);

            r.DisplayChartValues  = true;
            r.ChartValuesTextSize = 12;
            r.ChartValuesSpacing  = 3;
            r.GradientEnabled     = true;
            r.SetGradientStart(-20, Color.Blue);
            r.SetGradientStop(20, Color.Green);
            return(ChartFactory.GetRangeBarChartIntent(context, dataset, renderer, BarChart.Type.Default, "Temperatur range"));
        }
Пример #2
0
        /// <summary>
        /// Executes the chart demo.
        /// </summary>
        /// <param name="context"> the context </param>
        /// <returns> the built intent </returns>
        public override Intent Execute(Context context)
        {
            string[] titles = new string[] { "New tickets", "Fixed tickets" };
            IList <Java.Util.Date[]> dates  = new List <Java.Util.Date[]>();
            IList <double[]>         values = new List <double[]>();
            int length = titles.Length;

            for (int i = 0; i < length; i++)
            {
                dates.Add(new Java.Util.Date[12]);
                dates[i][0]  = new Java.Util.Date(108, 9, 1);
                dates[i][1]  = new Java.Util.Date(108, 9, 8);
                dates[i][2]  = new Java.Util.Date(108, 9, 15);
                dates[i][3]  = new Java.Util.Date(108, 9, 22);
                dates[i][4]  = new Java.Util.Date(108, 9, 29);
                dates[i][5]  = new Java.Util.Date(108, 10, 5);
                dates[i][6]  = new Java.Util.Date(108, 10, 12);
                dates[i][7]  = new Java.Util.Date(108, 10, 19);
                dates[i][8]  = new Java.Util.Date(108, 10, 26);
                dates[i][9]  = new Java.Util.Date(108, 11, 3);
                dates[i][10] = new Java.Util.Date(108, 11, 10);
                dates[i][11] = new Java.Util.Date(108, 11, 17);
            }
            values.Add(new double[] { 142, 123, 142, 152, 149, 122, 110, 120, 125, 155, 146, 150 });
            values.Add(new double[] { 102, 90, 112, 105, 125, 112, 125, 112, 105, 115, 116, 135 });
            length = values[0].Length;
            int[]                    colors   = new int[] { Color.Blue, Color.Green };
            PointStyle[]             styles   = new PointStyle[] { PointStyle.Point, PointStyle.Point };
            XYMultipleSeriesRenderer renderer = BuildRenderer(colors, styles);

            SetChartSettings(renderer, "Project work status", "Date", "Tickets", dates[0][0].Time, dates[0][11].Time, 50, 190, Color.Gray, Color.LightGray);
            renderer.XLabels = 0;
            renderer.YLabels = 10;
            renderer.AddYTextLabel(100, "test");
            length = renderer.SeriesRendererCount;
            for (int i = 0; i < length; i++)
            {
                SimpleSeriesRenderer seriesRenderer = renderer.GetSeriesRendererAt(i);
                seriesRenderer.DisplayChartValues = true;
            }
            renderer.XRoundedLabels = false;
            return(ChartFactory.GetTimeChartIntent(context, BuildDateDataset(titles, dates, values), renderer, "MM/dd/yyyy"));
        }