Пример #1
0
        /// <summary>
        /// 柱状图
        /// </summary>
        /// <returns></returns>
        public string GenerateBarChart()
        {
            int[]    data       = new int[] { 1027, 98, 36, 374, 473, 54, 126, 22, 147, 20, 188, 58 };
            string[] axisLabels = new string[] { "AA", "BB", "BB", "DD", "EE", "FF", "GG", "HH", "II", "JJ", "KK", "LL" };

            BarChart barChart = new BarChart(500, 250, BarChartOrientation.Vertical, BarChartStyle.Grouped);

            barChart.SetTitle("三日内更新数据");

            ChartAxis axisX = new ChartAxis(ChartAxisType.Bottom, axisLabels);
            ChartAxis axisY = new ChartAxis(ChartAxisType.Left);

            axisY.SetRange(0, barChart.findMaxValue(data));

            barChart.AddAxis(axisX);
            barChart.AddAxis(axisY);
            barChart.SetData(barChart.ConvertToPorcent(data));

            return(barChart.GetUrl());
        }
Пример #2
0
        public ActionResult Grafico(int?id)
        {
            LineChart         newlineChart      = new LineChart();
            tb_Indi_Indicador tb_Indi_Indicador = db.tb_Indi_Indicador.Find(id);
            List <int?>       aniosSelected     = tb_Indi_Indicador.tb_Indi_Indicador_Alimentar.Select(t => t.anio_alimentacion).Distinct().ToList();

            object[] datasets = new object[aniosSelected.Count + 1];
            int      j        = 0;

            foreach (int i in aniosSelected)
            {
                BarChart newBarChart = new BarChart();
                newBarChart.SetData(tb_Indi_Indicador, i);
                datasets[j] = newBarChart;
                j          += 1;
            }
            newlineChart.SetData(tb_Indi_Indicador);
            datasets[aniosSelected.Count] = newlineChart;
            return(Json(datasets, JsonRequestBehavior.AllowGet));
        }
Пример #3
0
        public static string horizontalStackedTest()
        {
            int[] data1 = new int[] { 10, 5, 20, 15 };
            int[] data2 = new int[] { 10, 10, 10, 10 };

            List <int[]> dataset = new List <int[]>();

            dataset.Add(data1);
            dataset.Add(data2);

            BarChart barChart = new BarChart(150, 150, BarChartOrientation.Horizontal, BarChartStyle.Stacked);

            barChart.SetTitle("Horizontal Stacked");
            barChart.AddAxis(new ChartAxis(ChartAxisType.Bottom));
            barChart.AddAxis(new ChartAxis(ChartAxisType.Left));
            barChart.SetData(dataset);

            barChart.SetDatasetColors(new string[] { "FF0000", "00AA00" });

            return(barChart.GetUrl());
        }
Пример #4
0
        public static string verticalGroupedTest()
        {
            int[] data1 = new int[] { 10, 5, 20 };
            int[] data2 = new int[] { 30, 35, 15 };

            List <int[]> dataset = new List <int[]>();

            dataset.Add(data1);
            dataset.Add(data2);

            BarChart barChart = new BarChart(300, 150, BarChartOrientation.Vertical, BarChartStyle.Grouped);

            barChart.SetTitle("Vertical Grouped");
            barChart.AddAxis(new ChartAxis(ChartAxisType.Bottom));
            barChart.AddAxis(new ChartAxis(ChartAxisType.Left));
            barChart.SetData(dataset);

            barChart.SetDatasetColors(new string[] { "FF0000", "00AA00" });

            return(barChart.GetUrl());
        }
Пример #5
0
        private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            BarChart barChart     = new BarChart(500, 500, 5);
            var      barChartData = new BarChartData()
            {
                Bars = new[] {
                    new BarData()
                    {
                        BarNum   = 0,
                        Name     = "МДТ6",
                        Sections = new[]
                        {
                            new BarSectionData()
                            {
                                Name = "Прошло труб", SectionNum = 0, Value = 10
                            },
                            new BarSectionData()
                            {
                                Name = "Повторы", SectionNum = 1, Value = 20
                            },
                            new BarSectionData()
                            {
                                Name = "Образцы", SectionNum = 2, Value = 5
                            },
                        },
                        CaptionText = "10/35"
                    },
                    new BarData()
                    {
                        BarNum   = 1,
                        Name     = "Сканер",
                        Sections = new[]
                        {
                            new BarSectionData()
                            {
                                Name = "Прошло труб", SectionNum = 0, Value = 10
                            },
                            new BarSectionData()
                            {
                                Name = "Повторы", SectionNum = 1, Value = 3
                            },
                            new BarSectionData()
                            {
                                Name = "Образцы", SectionNum = 2, Value = 8
                            },
                        },
                        CaptionText = "10/22"
                    },
                }
            };

            barChart.SetData(barChartData);
            using (MemoryStream ms = new MemoryStream())
            {
                barChart.Draw().Save(ms, ImageFormat.Bmp);
                var bitmapImage = new BitmapImage();
                ms.Seek(0, SeekOrigin.Begin);
                bitmapImage.BeginInit();
                bitmapImage.CacheOption  = BitmapCacheOption.OnLoad;
                bitmapImage.StreamSource = ms;
                bitmapImage.EndInit();
                image1.Source = bitmapImage;
            }
        }