private List<ComplexDataset> GenerateDataSets(GraphWithDescriptionModel data) { return new List<ComplexDataset> { new ComplexDataset { Data = data.GraphData.Select(t => Convert.ToDouble(t.Value)).ToList(), Label = data.Description, FillColor = ColorGeneratorConstants.Transparent, StrokeColor = this._colorGenerator.GenerateColor(), PointColor = ColorGeneratorConstants.Black, PointStrokeColor = ColorGeneratorConstants.White, PointHighlightFill = ColorGeneratorConstants.White, PointHighlightStroke = ColorGeneratorConstants.Black } }; }
private LineChart GenerateLineChart(GraphWithDescriptionModel data) { // check if enough data for line chart (with one point the chart is broken) if (data.GraphData.Count < 2) { return null; } var lineChart = new LineChart { ComplexData = { Labels = data.GraphData.Select(graphData => graphData.Label).ToList(), Datasets = this.GenerateDataSets(data) } }; // graph settings for dynamic charts lineChart.ChartConfiguration.ScaleBeginAtZero = false; lineChart.ChartConfiguration.Responsive = true; lineChart.ChartConfiguration.BezierCurve = false; lineChart.ChartConfiguration.PointHitDetectionRadius = 1; return lineChart; }