Exemplo n.º 1
0
 public ChartDataSet(string title, ChartColor color, List <double?> yValues, List <string> xValues)
 {
     Title   = title;
     Color   = color;
     YValues = yValues;
     XValues = xValues;
 }
Exemplo n.º 2
0
        /********** Tracker Content View : END **********/

        /********** Profile Chart View : START **********/

        private void GetTrackerData()
        {
            Device.BeginInvokeOnMainThread(async() =>
            {
                await Task.Factory.StartNew(() =>
                {
                    Entries      = new List <Entry>();
                    UserTrackers = UserTrackers.OrderBy(t => t.ModifyDate).ToList();
                    int index    = 0;
                    foreach (var tracker in UserTrackers)
                    {
                        index++;
                        var barColor = ChartColor.Get(index);
                        double.TryParse(tracker.CurrentWeight, out double currentWeight);
                        tracker.WeightLost      = StartWeight - currentWeight;
                        tracker.BackgroundColor = Xamarin.Forms.Color.FromHex(ChartColor.GetString(index));
                        Entries.Add(new Entry((float)tracker.WeightLost)
                        {
                            Label      = tracker.RevisionNumberDisplayShort,
                            ValueLabel = tracker.WeightLostDisplay.ToString(),
                            Color      = barColor,
                            TextColor  = barColor
                        });
                    }

                    SetChart(App.Configuration.GetUserGraph());
                });
            });
        }
Exemplo n.º 3
0
        private Chart GetAccountStatusChart()
        {
            _logger.LogTrace("Generating chart for account in each status.");
            var colorMapping = new Dictionary <AccountStatus, ChartColor> {
                { AccountStatus.Banned, ChartColor.FromHexString("#dc3545") },
                { AccountStatus.Disabled, ChartColor.FromHexString("#6c757d") },
                { AccountStatus.Ok, ChartColor.FromHexString("#28a745") },
                { AccountStatus.LockedOut, ChartColor.FromHexString("#ffc107") },
                { AccountStatus.PendingVerification, ChartColor.FromHexString("#17a2b8") }
            };
            var accountStatusData = _reportRepo.GetAccountStatusCount(true).ToList();
            var colors            = accountStatusData.Select(x => colorMapping[x.Status]).ToList();

            return(new Chart {
                Type = Enums.ChartType.Pie,
                Data = new Data {
                    Labels = accountStatusData.Select(x => Enum.GetName(typeof(AccountStatus), x.Status)).ToList(),
                    Datasets = new List <Dataset> {
                        new PieDataset {
                            Label = "Account Statuses (With Empty)",
                            BackgroundColor = colors,
                            HoverBackgroundColor = colors,
                            Data = accountStatusData.Select(x => (double)x.Count).ToList()
                        }
                    }
                }
            });
        }
Exemplo n.º 4
0
 static LineDataset CreateChartDataSet(string label, List <double?> data)
 {
     return(new LineDataset()
     {
         Label = label,
         Data = data,
         BackgroundColor = ChartColor.CreateRandomChartColor(true),
         BorderColor = ChartColor.CreateRandomChartColor(true),
         PointBorderColor = new List <ChartColor>()
         {
             ChartColor.CreateRandomChartColor(true)
         },
         PointBackgroundColor = new List <ChartColor>()
         {
             ChartColor.CreateRandomChartColor(true)
         },
         PointHoverBackgroundColor = new List <ChartColor>()
         {
             ChartColor.CreateRandomChartColor(true)
         },
         PointHoverBorderColor = new List <ChartColor>()
         {
             ChartColor.CreateRandomChartColor(true)
         },
         Fill = "true"
     });
 }
        private Chart GetSpendingByDateChart(StatisticsViewModel statisticsViewModel)
        {
            Chart chart = new Chart();
            Data  data  = new Data();

            data.Datasets = new List <Dataset>();
            chart.Data    = data;
            chart.Type    = Enums.ChartType.Line;

            var dates  = statisticsViewModel.SpendingByDateMap.Keys.ToList();
            var values = statisticsViewModel.SpendingByDateMap.Values.ToList();

            data.Labels = dates;
            LineDataset dataset = new LineDataset()
            {
                Label            = "Spending",
                Data             = values,
                Fill             = "false",
                LineTension      = 0.1,
                BackgroundColor  = ChartColor.FromRgba(75, 192, 192, 0.4),
                BorderColor      = ChartColor.FromRgb(75, 192, 192),
                BorderCapStyle   = "butt",
                BorderDash       = new List <int> {
                },
                BorderDashOffset = 0.0,
                BorderJoinStyle  = "miter",
                PointBorderColor = new List <ChartColor> {
                    ChartColor.FromRgb(75, 192, 192)
                },
                PointBackgroundColor = new List <ChartColor> {
                    ChartColor.FromHexString("#ffffff")
                },
                PointBorderWidth = new List <int> {
                    1
                },
                PointHoverRadius = new List <int> {
                    5
                },
                PointHoverBackgroundColor = new List <ChartColor> {
                    ChartColor.FromRgb(75, 192, 192)
                },
                PointHoverBorderColor = new List <ChartColor> {
                    ChartColor.FromRgb(220, 220, 220)
                },
                PointHoverBorderWidth = new List <int> {
                    2
                },
                PointRadius = new List <int> {
                    1
                },
                PointHitRadius = new List <int> {
                    10
                },
                SpanGaps = false
            };

            data.Datasets.Add(dataset);
            return(chart);
        }
Exemplo n.º 6
0
        public void FromHexString_Throws_FormatException_With_False_Length()
        {
            string tooShortHexString = "#12abe";
            string tooLongHexString  = "#12abefa";

            Assert.Throws <FormatException>(() => ChartColor.FromHexString(tooShortHexString));
            Assert.Throws <FormatException>(() => ChartColor.FromHexString(tooLongHexString));
        }
Exemplo n.º 7
0
        public void FromRgb_Populates_Alpha_With_One()
        {
            double expectedAlpha = 1.0;

            var actualColor = ChartColor.FromRgb(0, 0, 0);

            Assert.AreEqual(expectedAlpha, actualColor.Alpha);
        }
Exemplo n.º 8
0
        public void GetRandomChartColor_With_Random_Alpha_Returns_Values_In_Boundry()
        {
            var randomColor = ChartColor.CreateRandomChartColor(true);

            Assert.That(randomColor.Red, Is.GreaterThanOrEqualTo(0).And.LessThanOrEqualTo(256));
            Assert.That(randomColor.Green, Is.GreaterThanOrEqualTo(0).And.LessThanOrEqualTo(256));
            Assert.That(randomColor.Blue, Is.GreaterThanOrEqualTo(0).And.LessThanOrEqualTo(256));
            Assert.That(randomColor.Alpha, Is.GreaterThanOrEqualTo(0.0).And.LessThanOrEqualTo(1.0));
        }
Exemplo n.º 9
0
        public void Too_Small_Alpha_Throws_ArgumentOutOfRangeException()
        {
            byte   red   = 0;
            byte   green = 0;
            byte   blue  = 0;
            double alpha = -5;

            Assert.Throws <ArgumentOutOfRangeException>(() => ChartColor.FromRgba(red, green, blue, alpha));
        }
Exemplo n.º 10
0
        private Chart GetSupplierPayoutSumChart()
        {
            _logger.LogTrace("Generating chart for total supplier payout over the past 30 days.");
            var supplierPayoutSumData = _reportRepo.GetSupplierPayoutSums(DateTime.Today.AddMonths(-1).AddDays(-1), DateTime.Today.AddDays(1)).OrderBy(x => x.PayedAt).ToList();

            return(new Chart {
                Type = Enums.ChartType.Line,
                Data = new Data {
                    Labels = supplierPayoutSumData.Select(x => x.PayedAt.ToShortDateString()).ToList(),
                    Datasets = new List <Dataset> {
                        new LineDataset {
                            Label = "$ Total Payouts",
                            Data = supplierPayoutSumData.Select(x => (double)x.Sum).ToList(),
                            Fill = "false",
                            LineTension = 0.1,
                            BackgroundColor = ChartColor.FromRgba(40, 167, 69, 0.4),
                            BorderColor = ChartColor.FromRgba(40, 167, 69, 1),
                            BorderCapStyle = "butt",
                            BorderDashOffset = 0.0,
                            BorderJoinStyle = "miter",
                            PointBorderColor = new List <ChartColor>()
                            {
                                ChartColor.FromRgba(40, 167, 69, 1)
                            },
                            PointBackgroundColor = new List <ChartColor>()
                            {
                                ChartColor.FromHexString("#fff")
                            },
                            PointBorderWidth = new List <int> {
                                1
                            },
                            PointHoverRadius = new List <int> {
                                5
                            },
                            PointHoverBackgroundColor = new List <ChartColor>()
                            {
                                ChartColor.FromRgba(40, 167, 69, 1)
                            },
                            PointHoverBorderColor = new List <ChartColor>()
                            {
                                ChartColor.FromRgba(40, 220, 220, 1)
                            },
                            PointHoverBorderWidth = new List <int> {
                                2
                            },
                            PointRadius = new List <int> {
                                1
                            },
                            PointHitRadius = new List <int> {
                                10
                            },
                        }
                    }
                }
            });
        }
Exemplo n.º 11
0
        private Chart GetAccountCreatedChart()
        {
            _logger.LogTrace("Generating chart for account created over the past 7 days.");
            var accountCreatedData = _reportRepo.GetAccountCreatedCount(DateTime.Today.AddDays(-8), DateTime.Today.AddDays(1)).OrderBy(x => x.CreatedDate).ToList();

            return(new Chart {
                Type = Enums.ChartType.Line,
                Data = new Data {
                    Labels = accountCreatedData.Select(x => x.CreatedDate.ToShortDateString()).ToList(),
                    Datasets = new List <Dataset> {
                        new LineDataset {
                            Label = "# Of Accounts Created",
                            Data = accountCreatedData.Select(x => (double)x.Count).ToList(),
                            Fill = "false",
                            LineTension = 0.1,
                            BackgroundColor = ChartColor.FromRgba(75, 192, 192, 0.4),
                            BorderColor = ChartColor.FromRgba(75, 192, 192, 1),
                            BorderCapStyle = "butt",
                            BorderDashOffset = 0.0,
                            BorderJoinStyle = "miter",
                            PointBorderColor = new List <ChartColor>()
                            {
                                ChartColor.FromRgba(75, 192, 192, 1)
                            },
                            PointBackgroundColor = new List <ChartColor>()
                            {
                                ChartColor.FromHexString("#fff")
                            },
                            PointBorderWidth = new List <int> {
                                1
                            },
                            PointHoverRadius = new List <int> {
                                5
                            },
                            PointHoverBackgroundColor = new List <ChartColor>()
                            {
                                ChartColor.FromRgba(75, 192, 192, 1)
                            },
                            PointHoverBorderColor = new List <ChartColor>()
                            {
                                ChartColor.FromRgba(220, 220, 220, 1)
                            },
                            PointHoverBorderWidth = new List <int> {
                                2
                            },
                            PointRadius = new List <int> {
                                1
                            },
                            PointHitRadius = new List <int> {
                                10
                            },
                        }
                    }
                }
            });
        }
Exemplo n.º 12
0
        public override void RenderChart(CanvasWrapper canvasWrapper, Axis axis, IMinMax minMax)
        {
            var divisor     = 2.5f;
            var strokeWidth = 30;

            if (canvasWrapper.NumberOfCharts > 6)
            {
                switch (Device.RuntimePlatform)
                {
                case Device.WPF:
                case Device.GTK:
                case Device.macOS:
                case Device.UWP: {
                    divisor     = 2.0f;
                    strokeWidth = 15;
                    break;
                }

                default: {
                    divisor     = 1.5f;
                    strokeWidth = 30;
                    break;
                }
                }
                ;
            }


            var chartArea = canvasWrapper.ChartArea;
            var canvas    = canvasWrapper.Canvas;

            var radius = Math.Min(chartArea.MidX, chartArea.MidY) / divisor;

            radius = radius - (canvasWrapper.NumberPlottedChart * strokeWidth);

            _chartPaint.StrokeWidth = strokeWidth;
            _chartPaint.Style       = SKPaintStyle.Stroke;

            var teta = 360 - ((minMax.Ymax - OriginalData.ElementAt(0).Y) / (minMax.Ymax - minMax.Ymin) * 360);

            var rect = new SKRect(chartArea.MidX - radius, chartArea.MidY - radius, chartArea.MidX + radius, chartArea.MidY + radius);
            var path = new SKPath();

            path.AddArc(rect, 90, -teta);
            canvas.DrawPath(path, _chartPaint);

            _chartPaint.Color = ChartColor.WithAlpha(70);
            canvas.DrawCircle(chartArea.MidX, chartArea.MidY, radius, _chartPaint);
            canvasWrapper.NumberPlottedChart += 1;

            _chartPaint.Color = ChartColor;
            ChartName         = $"{Label} : {Value}";
            RenderLegend(canvasWrapper, axis, canvas, PointPlotVariant.ScatterChart);
        }
Exemplo n.º 13
0
        public void GetRandomChartColor_Without_Random_Alpha_Returns_Values_In_Boundry_And_Alpha_One()
        {
            double expectedAlpha = 1.0;

            var randomColor = ChartColor.CreateRandomChartColor(false);

            Assert.That(randomColor.Red, Is.GreaterThanOrEqualTo(0).And.LessThanOrEqualTo(256));
            Assert.That(randomColor.Green, Is.GreaterThanOrEqualTo(0).And.LessThanOrEqualTo(256));
            Assert.That(randomColor.Blue, Is.GreaterThanOrEqualTo(0).And.LessThanOrEqualTo(256));
            Assert.AreEqual(randomColor.Alpha, expectedAlpha);
        }
Exemplo n.º 14
0
        public async Task <Chart> GenerateBasicExpensesChart(string userId)
        {
            var toDisplay = await GetAmountPerCategory(TimePeriod.Month, userId);

            var amountperCategory = new List <double?>();

            var chart = new Chart {
                Type = Enums.ChartType.Bar
            };

            ChartJSCore.Models.Data data = new ChartJSCore.Models.Data();
            data.Labels = new List <string>();

            foreach (var item in toDisplay)
            {
                data.Labels.Add(item.Category.CategoryName);
                amountperCategory.Add(decimal.ToDouble(item.Amount));
            }

            var dataset = new BarDataset
            {
                Label           = "Expenses per Category",
                Data            = amountperCategory,
                BackgroundColor = new List <ChartColor>
                {
                    ChartColor.FromRgba(255, 99, 132, 1),
                },
            };

            data.Datasets = new List <Dataset> {
                dataset
            };

            chart.Data = data;

            chart.Options = await GetOptions();

            chart.Options.Layout = new Layout
            {
                Padding = new Padding
                {
                    PaddingObject = new PaddingObject
                    {
                        Left   = 10,
                        Right  = 12,
                        Top    = 10,
                        Bottom = 10
                    }
                }
            };

            return(chart);
        }
Exemplo n.º 15
0
        public void FromRgb_Populates_Correct_Values()
        {
            byte expectedRed   = 66;
            byte expectedGreen = 99;
            byte expectedBlue  = 111;

            var actualColor = ChartColor.FromRgb(expectedRed, expectedGreen, expectedBlue);

            Assert.AreEqual(expectedRed, actualColor.Red);
            Assert.AreEqual(expectedGreen, actualColor.Green);
            Assert.AreEqual(expectedBlue, actualColor.Blue);
        }
Exemplo n.º 16
0
        private Chart GeneratePieChart(List <Track> tracks)
        {
            Chart chart = new Chart
            {
                Type = Enums.ChartType.Pie,
            };

            ChartJSCore.Models.Data data = new ChartJSCore.Models.Data
            {
                Labels = Enum.GetNames(typeof(JudgeStatus))
            };

            PieDataset dataset = new PieDataset
            {
                Label = "Summary",

                BackgroundColor = new List <ChartColor>
                {
                    ChartColor.FromHexString("#28A745"),
                    ChartColor.FromHexString("#FFC720"),
                    ChartColor.FromHexString("#DC3545"),
                    ChartColor.FromHexString("#1B6EC2"),
                    ChartColor.FromHexString("#6C757D")
                },

                HoverBackgroundColor = new List <ChartColor>
                {
                    ChartColor.FromHexString("#28A745"),
                    ChartColor.FromHexString("#FFC720"),
                    ChartColor.FromHexString("#DC3545"),
                    ChartColor.FromHexString("#1B6EC2"),
                    ChartColor.FromHexString("#6C757D")
                },

                Data = new List <double?>
                {
                    tracks.LongCount(x => x.Status == JudgeStatus.Accept),
                    tracks.LongCount(x => x.Status == JudgeStatus.WrongAnswer),
                    tracks.LongCount(x => x.Status == JudgeStatus.CompileError),
                    tracks.LongCount(x => x.Status == JudgeStatus.UnknownError),
                    tracks.LongCount(x => x.Status == JudgeStatus.Pending)
                },
            };

            data.Datasets = new List <Dataset>
            {
                dataset
            };

            chart.Data = data;

            return(chart);
        }
Exemplo n.º 17
0
        public void FromRgba_Populates_Correct_Values()
        {
            byte   expectedRed   = 187;
            byte   expectedGreen = 55;
            byte   expectedBlue  = 4;
            double expectedAlpha = 0.65;

            var actualColor = ChartColor.FromRgba(expectedRed, expectedGreen, expectedBlue, expectedAlpha);

            Assert.AreEqual(expectedRed, actualColor.Red);
            Assert.AreEqual(expectedGreen, actualColor.Green);
            Assert.AreEqual(expectedBlue, actualColor.Blue);
            Assert.AreEqual(expectedAlpha, actualColor.Alpha);
        }
Exemplo n.º 18
0
        public void FromHexString_Populates_Correct_Values()
        {
            byte   expectedRed   = 154;
            byte   expectedGreen = 89;
            byte   expectedBlue  = 77;
            double expectedAlpha = 1.0;

            var actualColor = ChartColor.FromHexString($"#{expectedRed:X}{expectedGreen:X}{expectedBlue:X}");

            Assert.AreEqual(expectedRed, actualColor.Red);
            Assert.AreEqual(expectedGreen, actualColor.Green);
            Assert.AreEqual(expectedBlue, actualColor.Blue);
            Assert.AreEqual(expectedAlpha, actualColor.Alpha);
        }
Exemplo n.º 19
0
        static AppColors()
        {
            ChartDarkBlue = ChartColor.FromHtmlColorCode(DarkBlue);

            ChartLightGray = ChartColor.FromHtmlColorCode(LightGray);

            ChartRed = ChartColor.FromHtmlColorCode(Red);

            ChartBlue = ChartColor.FromHtmlColorCode(Blue);

            ChartGreen = ChartColor.FromHtmlColorCode(Green);

            ChartYellow = ChartColor.FromHtmlColorCode(Yellow);
        }
Exemplo n.º 20
0
        public void ToString_Returns_Correct_Rgba_String_Representation()
        {
            byte   red   = 4;
            byte   green = 65;
            byte   blue  = 154;
            double alpha = 0.232;

            string expectedString = $"rgba({red}, {green}, {blue}, {alpha.ToString(CultureInfo.InvariantCulture)})";

            var color        = ChartColor.FromRgba(red, green, blue, alpha);
            var actualString = color.ToString();

            Assert.AreEqual(expectedString, actualString);
        }
Exemplo n.º 21
0
        private static Chart GetWeekDailyWatchedChart(Dictionary <string, double> timePerWeekday)
        {
            var chart = new Chart {
                Type = Enums.ChartType.Bar
            };
            var data = new ChartJSCore.Models.Data
            {
                Labels = timePerWeekday.Keys.ToList()
            };
            var dataset = new BarDataset
            {
                Label       = "# hours watched",
                Data        = new List <double?>(timePerWeekday.Values.Select(x => (double?)x)),
                BorderWidth = new List <int> {
                    1
                },
                BackgroundColor = new List <ChartColor> {
                    ChartColor.FromRgba(229, 9, 20, 0.8)
                },
                Type = Enums.ChartType.Bar,
            };

            data.Datasets = new List <Dataset> {
                dataset
            };
            chart.Data    = data;
            chart.Options = new Options
            {
                Responsive          = true,
                MaintainAspectRatio = false,
                Title = new Title {
                    Text = "Hours watched per weekday", Display = true
                },
                ResponsiveAnimationDuration = 500,
                Scales = new Scales
                {
                    YAxes = new List <Scale>
                    {
                        new CartesianScale
                        {
                            Ticks = new CartesianLinearTick {
                                BeginAtZero = true
                            }
                        }
                    }
                }
            };

            return(chart);
        }
Exemplo n.º 22
0
        public static Chart BuildTemperatureAttributesBubbleChart1(List <TemperatureOrigin> temperatureOrigins)
        {
            Chart chart = new Chart();

            chart.Type = Enums.ChartType.Bubble;

            var data = new Data();

            List <Dataset> datasets = new List <Dataset>();

            ChartColor[] colors = { Colors.GetRedBorder(), Colors.GetBlueBorder(), Colors.GetGreenBorder() };

            int j = 0;

            for (int i = 0; i < temperatureOrigins.Count; i++)
            {
                var dataset        = new BubbleDataset();
                var bubbleDataList = new List <BubbleData>();
                foreach (var temp in temperatureOrigins[i].TemperatureAtts)
                {
                    TimeSpan t          = (temp.Time - new DateTime(1970, 1, 1));
                    var      bubbleData = new BubbleData
                    {
                        X = (int)t.TotalSeconds,
                        Y = temp.Temp,
                        R = 5
                    };
                    bubbleDataList.Add(bubbleData);
                }
                dataset.Data        = bubbleDataList;
                dataset.BorderColor = new List <ChartColor> {
                    colors[j++]
                };
                dataset.BackgroundColor = new List <ChartColor> {
                    ChartColor.FromRgba(255, 255, 255, 0.2)
                };
                dataset.Label = temperatureOrigins[i].Origin;
                datasets.Add(dataset);
            }

            data.Datasets = datasets;

            FixTimeLabels(chart.Options);

            chart.Data = data;

            return(chart);
        }
        private async Task <Chart> GenerateGameChart()
        {
            var allGames    = gameRepository.GetAll();
            var allProfiles = dbContext.Users
                              .Include(u => u.GameProfiles)
                              .ThenInclude(gp => gp.Game)
                              .SelectMany(u => u.GameProfiles)
                              .ToList();
            var usersPerGame = new Dictionary <string, int>();

            foreach (var game in allGames)
            {
                var count = allProfiles
                            .Count(p => p.Game.Id == game.Id);
                usersPerGame.Add(game.Name, count);
            }

            var chart = new Chart {
                Type = Enums.ChartType.PolarArea
            };

            var data = new ChartJSCore.Models.Data
            {
                Labels = usersPerGame.Keys.ToList()
            };

            var dataset = new PolarDataset
            {
                Label           = "My dataset",
                BackgroundColor = new List <ChartColor>
                {
                    ChartColor.FromHexString("#FF6384"),
                    ChartColor.FromHexString("#4BC0C0"),
                    ChartColor.FromHexString("#FFCE56")
                },
                Data = usersPerGame.Values.Select <int, double?>(i => i).ToList()
            };

            data.Datasets = new List <Dataset> {
                dataset
            };

            chart.Data = data;

            return(chart);
        }
Exemplo n.º 24
0
 private LineChartDataset <double> GetLoadTimeLineChartDataset()
 {
     return(new LineChartDataset <double>
     {
         Label = L["LoadTime"].Value,
         Data = MonitorWithDetails.LoadTimes,
         BackgroundColor = new List <string> {
             ChartColor.FromRgba(0, 218, 197, 0.2f)
         },
         BorderColor = new List <string> {
             ChartColor.FromRgba(0, 218, 197, 1f)
         },
         Fill = true,
         PointRadius = 2,
         BorderDash = new List <int> {
         }
     });
 }
Exemplo n.º 25
0
        async Task RefreshUI(SourceHistory history)
        {
            var labels = history.HistoryData
                         .Select(d => d.TimeStampUtc.LocalDateTime.ToString("d.M."))
                         .Reverse()
                         .ToArray();

            var dataSupplies = history.HistoryData
                               .Select(d => {
                // Item 0 = supplies in kg (label "supplies")
                string value = d.DataItems[0].Value.ToString();
                double.TryParse(value, out double supplies);
                return(supplies);
            })
                               .Reverse()
                               .ToList();

            var currentSupplies = $"Vorrat: {dataSupplies.Last():0.0}kg";

            var dataSetPelletSupplies = new LineChartDataset <double>
            {
                Label           = currentSupplies,
                Data            = dataSupplies,
                BackgroundColor = new List <string> {
                    ChartColor.FromRgba(226, 228, 242, 0.8f)
                },
                BorderColor = new List <string> {
                    ChartColor.FromRgba(95, 104, 188, 0.5f)
                },
                Fill        = true,
                PointRadius = 2,
                BorderDash  = new List <int> {
                }
            };

            await lineChart.Clear();

            await lineChart.AddLabel(labels);

            await lineChart.AddDataSet(dataSetPelletSupplies);

            await lineChart.Update();
        }
Exemplo n.º 26
0
        private static Chart GenerateBubbleChart()
        {
            var chart = new Chart {
                Type = Enums.ChartType.Bubble
            };

            var data = new Data();

            var dataset = new BubbleDataset
            {
                Label = "Bubble Dataset",
                Data  = new List <BubbleData>()
            };

            var bubbleData1 = new BubbleData();
            var bubbleData2 = new BubbleData();

            bubbleData1.X = 20;
            bubbleData1.Y = 30;
            bubbleData1.R = 15;
            dataset.Data.Add(bubbleData1);

            bubbleData2.X = 40;
            bubbleData2.Y = 10;
            bubbleData2.R = 10;
            dataset.Data.Add(bubbleData2);

            data.Datasets = new List <Dataset> {
                dataset
            };

            dataset.BackgroundColor = new List <ChartColor> {
                ChartColor.FromRgb(255, 99, 132)
            };
            dataset.HoverBackgroundColor = new List <ChartColor> {
                ChartColor.FromRgb(255, 99, 132)
            };

            chart.Data = data;

            return(chart);
        }
Exemplo n.º 27
0
        private static Chart GeneratePolarChart()
        {
            var chart = new Chart {
                Type = Enums.ChartType.PolarArea
            };

            var data = new Data
            {
                Labels = new List <string>
                {
                    "Red",
                    "Green",
                    "Yellow",
                    "Grey",
                    "Blue"
                }
            };

            var dataset = new PolarDataset
            {
                Label           = "My dataset",
                BackgroundColor = new List <ChartColor>
                {
                    ChartColor.FromHexString("#FF6384"),
                    ChartColor.FromHexString("#4BC0C0"),
                    ChartColor.FromHexString("#FFCE56"),
                    ChartColor.FromHexString("#E7E9ED"),
                    ChartColor.FromHexString("#36A2EB")
                },
                Data = new List <double?> {
                    11, 16, 7, 3, 14
                }
            };

            data.Datasets = new List <Dataset> {
                dataset
            };

            chart.Data = data;

            return(chart);
        }
Exemplo n.º 28
0
        private static Chart GeneratePieChart(List <Project> listOfProjects)
        {
            Chart chart = new Chart();

            chart.Type = Enums.ChartType.Pie;

            Data data = new Data();

            data.Labels = new List <string>()
            {
                "Red", "Blue", "Yellow"
            };

            PieDataset dataset = new PieDataset()
            {
                Label           = "My dataset",
                BackgroundColor = new List <ChartColor>()
                {
                    ChartColor.FromHexString("#FF6384"),
                    ChartColor.FromHexString("#36A2EB"),
                    ChartColor.FromHexString("#FFCE56")
                },
                HoverBackgroundColor = new List <ChartColor>()
                {
                    ChartColor.FromHexString("#FF6384"),
                    ChartColor.FromHexString("#36A2EB"),
                    ChartColor.FromHexString("#FFCE56")
                },
                Data = new List <double>()
                {
                    300, 50, 100
                }
            };

            data.Datasets = new List <Dataset>();
            data.Datasets.Add(dataset);

            chart.Data = data;

            return(chart);
        }
Exemplo n.º 29
0
        public ContentResult OnGetChartData(string hashtags)
        {
            List <string> colors = new List <string>()
            {
                "#FF6384", "#4BC0C0", "#FFCE56", "#E7E9ED", "#36A2EB"
            };

            List <TweetsData> tweets = GetTweets(hashtags);

            var   dates = tweets.GroupBy(d => d.Date).Select(k => k.Key).ToList();
            Chart chart = new Chart
            {
                Type = Enums.ChartType.PolarArea
            };

            Data data = new Data();

            data.Labels = tweets.GroupBy(k => k.Keyword).Select(k => k.Key).ToList();
            PolarDataset dataset = new PolarDataset()
            {
                Label           = "Keywords dataset",
                BackgroundColor = new List <ChartColor>(),
                Data            = new List <double?>()
            };
            Random rnd = new Random();
            int    i   = 0;

            foreach (string label in data.Labels)
            {
                dataset.Data.Add(tweets.Where(l => l.Keyword == label).GroupBy(k => k.Count).Select(c => c.Key).Sum());
                //ChartColor.FromHexString(string.Format("#{0:X6}", rnd.Next(0x1000000))) < random colors
                dataset.BackgroundColor.Add(ChartColor.FromHexString(colors[i]));
                i++;
            }
            data.Datasets = new List <Dataset>
            {
                dataset
            };
            chart.Data = data;
            return(Content(chart.CreateChartCode("lineChart")));
        }
Exemplo n.º 30
0
        private static Chart GeneratePieChart()
        {
            var chart = new Chart {
                Type = Enums.ChartType.Pie
            };

            var data = new Data {
                Labels = new List <string> {
                    "Red", "Blue", "Yellow"
                }
            };

            var dataset = new PieDataset
            {
                Label           = "My dataset",
                BackgroundColor = new List <ChartColor>
                {
                    ChartColor.FromHexString("#FF6384"),
                    ChartColor.FromHexString("#36A2EB"),
                    ChartColor.FromHexString("#FFCE56")
                },
                HoverBackgroundColor = new List <ChartColor>
                {
                    ChartColor.FromHexString("#FF6384"),
                    ChartColor.FromHexString("#36A2EB"),
                    ChartColor.FromHexString("#FFCE56")
                },
                Data = new List <double> {
                    300, 50, 100
                }
            };

            data.Datasets = new List <Dataset> {
                dataset
            };

            chart.Data = data;

            return(chart);
        }