private void InitializeChart() { if (supportLineChart != null && supportLineChart.ChartData != null && lineChart != null) { SupportChart.OnInitializeChart(supportLineChart, lineChart); var data = supportLineChart.ChartData; var dataSetItems = new List <LineChartDataSet>(); foreach (var itemChild in data.IF_GetDataSet()) { var entryOriginal = itemChild.IF_GetEntry().Select(item => new iOSCharts.ChartDataEntry(item.GetXPosition(), item.GetYPosition())); LineChartDataSet lineDataSet = new LineChartDataSet(entryOriginal.ToArray(), itemChild.IF_GetTitle()); lineDataSet.SetColor(itemChild.IF_GetDataColor().ToUIColor()); lineDataSet.Mode = (SupportChart.GetDrawLineMode(itemChild.IF_GetDrawMode())); lineDataSet.CircleRadius = itemChild.IF_GetCircleRadius(); lineDataSet.CircleHoleRadius = itemChild.IF_GetCircleHoleRadius(); lineDataSet.DrawCirclesEnabled = (itemChild.IF_GetDrawCircle()); lineDataSet.DrawValuesEnabled = (itemChild.IF_GetDrawValue()); var arrColor = itemChild.IF_GetCircleColors().Select(item => item.ToUIColor()); lineDataSet.SetCircleColor(itemChild.IF_GetCircleColor().ToUIColor()); dataSetItems.Add(lineDataSet); } LineChartData lineData = new LineChartData(dataSetItems.ToArray()); lineChart.Data = lineData; } }
public static ChartData GetLineChartData(AnalyticsDataResponse apiResults) { // Get the amount of dimensions and metrics int dimensions = apiResults.ColumnHeaders.Count(x => x.ColumnType == "DIMENSION"); int metrics = apiResults.ColumnHeaders.Count(x => x.ColumnType == "METRIC"); var chartLabels = new string[] {}; if (apiResults.ColumnHeaders.Count() == 5) { chartLabels = apiResults.Rows.Select(row => row.Cells[2] + "/" + row.Cells[1] + "/" + row.Cells[0]).ToArray(); } else { chartLabels = apiResults.Rows.Select(row => row.Cells[1] + "/" + row.Cells[0]).ToArray(); } // Initialize the data object ChartData cd = new ChartData { labels = chartLabels, datasets = new LineChartDataSet[metrics] }; // Add a dataset for each metric for (int metric = 0; metric < metrics; metric++) { // Initialize the data object LineChartDataSet ds = cd.datasets[metric] = new LineChartDataSet(); ds.fillColor = GetFillColor(metric); ds.strokeColor = GetStrokeColor(metric); ds.pointColor = GetFillColor(metric); ds.pointStrokeColor = GetStrokeColor(metric); ds.pointHighlightFill = GetPointHighlightFillColor(); ds.pointHighlightStroke = GetPointHighlightStrokeColor(metric); ds.data = new object[apiResults.Rows.Length]; for (int row = 0; row < apiResults.Rows.Length; row++) { // Get the value string value = apiResults.Rows[row].Cells[dimensions + metric].Value; // Set the value with the proper type if (Regex.IsMatch(value, "^[0-9]+$")) { ds.data[row] = Int32.Parse(value); } else { ds.data[row] = value; } } } return(cd); }
/* * EXPORT FOR LINE */ public iOSCharts.LineChartData ExportLineData(Widget.Charts.Models.LineChart.LineChartData bubbleChartData) { var dataSetItems = new List <LineChartDataSet>(); foreach (var item in bubbleChartData.DataSets) { var entryOriginal = item.IF_GetValues().Select(obj => new ChartDataEntry(obj.GetXPosition(), obj.GetYPosition())); var dataSet = new LineChartDataSet(entryOriginal.ToArray(), item.IF_GetLabel()); OnIntializeDataSetLine(item, dataSet); dataSetItems.Add(dataSet); } var data = new iOSCharts.LineChartData(dataSetItems.ToArray()); return(data); }
private void OnIntializeDataSetLine(ILineDataSetXF source, LineChartDataSet original) { OnSettingsLineRadarDataSet(source, original); if (source.IF_GetMode().HasValue) { original.Mode = (GetDrawLineMode(source.IF_GetMode().Value)); } if (source.IF_GetCircleColors() != null && source.IF_GetCircleColors().Count > 0) { original.CircleColors = source.IF_GetCircleColors().Select(item => item.ToUIColor()).ToArray(); } if (source.IF_GetCircleHoleColor().HasValue) { original.CircleHoleColor = source.IF_GetCircleHoleColor().Value.ToUIColor(); } if (source.IF_GetCircleRadius().HasValue) { original.CircleRadius = source.IF_GetCircleRadius().Value; } if (source.IF_GetCircleHoleRadius().HasValue) { original.CircleHoleRadius = source.IF_GetCircleHoleRadius().Value; } if (source.IF_GetCubicIntensity().HasValue) { original.CubicIntensity = source.IF_GetCubicIntensity().Value; } if (source.IF_GetDrawCircles().HasValue) { original.DrawCirclesEnabled = (source.IF_GetDrawCircles().Value); } if (source.IF_GetDrawCircleHole().HasValue) { original.DrawCircleHoleEnabled = (source.IF_GetDrawCircleHole().Value); } }
void Initialize() { BackgroundColor = UIColor.Red; lcv = new LineChartView(); ChartDataEntry[] cde = new ChartDataEntry[10]; string labelName = ""; LineChartDataSet lcds = new LineChartDataSet(cde, labelName); LineChartData lcd = new LineChartData(); lcd.AddDataSet(lcds); lcv.Add(this); lcv.Data = lcd; lcv.SetNeedsDisplay(); }
public ActionResult GetInventoryGroupJson() { string[] month = new string[12]; string[] inWeight = new string[12]; string[] outWeight = new string[12]; string inGroupSql = @" select top 12 sum(Weight) Weight, cast(year(F_CreatorTime) as varchar(4))+'-'+right('00' +cast(month(F_CreatorTime) as varchar(2)),2) Date from Inventory group by year(F_CreatorTime),month(F_CreatorTime) order by year(F_CreatorTime) desc,month(F_CreatorTime) desc"; string outGroupSql = @" select top 12 sum(Weight) Weight, cast(year(F_CreatorTime) as varchar(4))+'-'+right('00' +cast(month(F_CreatorTime) as varchar(2)),2) Date from InventoryOut group by year(F_CreatorTime),month(F_CreatorTime) order by year(F_CreatorTime) desc,month(F_CreatorTime) desc"; DataView inGroup = DbHelper.ExecuteToDataView(inGroupSql); DataView outGroup = DbHelper.ExecuteToDataView(outGroupSql); for (int i = 0; i < 12; i++) { month[i] = DateTime.Now.AddMonths(i - 11).ToString("yyyy-MM"); foreach (DataRowView drv in inGroup) { if (month[i] == Convert.ToString(drv["Date"])) { inWeight[i] = Convert.ToString(drv["Weight"]); } else { if (string.IsNullOrEmpty(inWeight[i])) { inWeight[i] = "0"; } } } foreach (DataRowView drv in outGroup) { if (month[i] == Convert.ToString(drv["Date"])) { outWeight[i] = Convert.ToString(drv["Weight"]); } else { if (string.IsNullOrEmpty(outWeight[i])) { outWeight[i] = "0"; } } } } LineChartDataSet lineChartDataSet1 = new LineChartDataSet() { value = "入库", fillColor = "rgba(220,220,220,0.2)", strokeColor = "rgba(220,220,220,1)", pointColor = "rgba(220,220,220,1)", pointStrokeColor = "#fff", pointHighlightFill = "#fff", pointHighlightStroke = "rgba(220,220,220,1)", data = inWeight }; LineChartDataSet lineChartDataSet2 = new LineChartDataSet() { value = "出库", fillColor = "rgba(151,187,205,0.2)", strokeColor = "rgba(151,187,205,1)", pointColor = "rgba(151,187,205,1)", pointStrokeColor = "#fff", pointHighlightFill = "#fff", pointHighlightStroke = "rgba(151,187,205,1)", data = outWeight }; LineChartData lineChartData = new LineChartData() { labels = month }; lineChartData.datasets.Add(lineChartDataSet1); lineChartData.datasets.Add(lineChartDataSet2); return(Content(lineChartData.ToJson())); }
void SetData() { List <ChartDataEntry> entries = new List <ChartDataEntry>(); List <ChartDataEntry> secondEntries = new List <ChartDataEntry>(); List <ChartDataEntry> thirdEntries = new List <ChartDataEntry>(); List <ChartDataEntry> fourthEntries = new List <ChartDataEntry>(); entries.Add(new ChartDataEntry(0, 8)); entries.Add(new ChartDataEntry(1, 3)); entries.Add(new ChartDataEntry(2, 1)); entries.Add(new ChartDataEntry(3, -1)); secondEntries.Add(new ChartDataEntry(3, -1)); secondEntries.Add(new ChartDataEntry(4, -7)); secondEntries.Add(new ChartDataEntry(5, -2)); secondEntries.Add(new ChartDataEntry(6, -3)); secondEntries.Add(new ChartDataEntry(7, -4)); thirdEntries.Add(new ChartDataEntry(7, 2)); thirdEntries.Add(new ChartDataEntry(8, 2.6f)); thirdEntries.Add(new ChartDataEntry(9, 3.6f)); thirdEntries.Add(new ChartDataEntry(10, 2.8f)); thirdEntries.Add(new ChartDataEntry(11, 3.8f)); LineChartDataSet set1 = null; set1 = new LineChartDataSet(entries.ToArray(), " "); set1.LineWidth = 3f; set1.CircleRadius = 5f; set1.Mode = LineChartMode.CubicBezier; set1.DrawValuesEnabled = false; set1.SetColor(UIColor.White); set1.DrawFilledEnabled = true; set1.CircleHoleColor = UIColor.White; set1.SetCircleColor(UIColor.White); set1.DrawHorizontalHighlightIndicatorEnabled = false; LineChartDataSet set2 = null; set2 = new LineChartDataSet(secondEntries.ToArray(), " "); set2.LineWidth = 3f; set2.CircleRadius = 5f; set2.Mode = LineChartMode.CubicBezier; set2.DrawValuesEnabled = false; set2.SetColor(UIColor.White); set2.DrawFilledEnabled = true; set2.CircleHoleColor = UIColor.White; set2.SetCircleColor(UIColor.White); set2.DrawHorizontalHighlightIndicatorEnabled = false; LineChartDataSet set3 = null; set3 = new LineChartDataSet(thirdEntries.ToArray(), " "); set3.LineWidth = 3f; set3.CircleRadius = 5f; set3.Mode = LineChartMode.CubicBezier; set3.DrawValuesEnabled = false; set3.SetColor(UIColor.White); set3.DrawFilledEnabled = true; set3.CircleHoleColor = UIColor.White; set3.SetCircleColor(UIColor.White); set3.DrawHorizontalHighlightIndicatorEnabled = false; LineChartDataSet set4 = null; set4 = new LineChartDataSet(fourthEntries.ToArray(), " "); set4.LineWidth = 3f; set4.Mode = LineChartMode.CubicBezier; set4.DrawValuesEnabled = false; set4.DrawCirclesEnabled = false; set4.SetColor(UIColor.White); set4.DrawFilledEnabled = true; set4.CircleHoleColor = UIColor.White; set4.SetCircleColor(UIColor.Red); set4.DrawHorizontalHighlightIndicatorEnabled = false; List <LineChartDataSet> dataSets = new List <LineChartDataSet>(); dataSets.Add(set1); dataSets.Add(set2); dataSets.Add(set3); dataSets.Add(set4); var t = (IInterfaceChartDataSet[])dataSets.ToArray(); var lineChartData = new LineChartData(t); var barChartData = GenerateBarData(); var data = new CombinedChartData(); data.LineData = lineChartData; data.BarData = barChartData; _chart.Data = data; _chart.SetVisibleXRangeMaximum(7); }
void SetData() { List <ChartDataEntry> entries = new List <ChartDataEntry>(); List <ChartDataEntry> secondEntries = new List <ChartDataEntry>(); List <ChartDataEntry> thirdEntries = new List <ChartDataEntry>(); List <ChartDataEntry> fourthEntries = new List <ChartDataEntry>(); entries.Add(new ChartDataEntry(0, 0.613)); entries.Add(new ChartDataEntry(1, 0.365)); entries.Add(new ChartDataEntry(2, 0.334)); entries.Add(new ChartDataEntry(3, 0.538)); secondEntries.Add(new ChartDataEntry(3, 0.538)); secondEntries.Add(new ChartDataEntry(4, 0.932)); secondEntries.Add(new ChartDataEntry(5, 1.421)); secondEntries.Add(new ChartDataEntry(6, 1.891)); secondEntries.Add(new ChartDataEntry(7, 2.241)); thirdEntries.Add(new ChartDataEntry(7, 2.241)); thirdEntries.Add(new ChartDataEntry(8, 2.397)); thirdEntries.Add(new ChartDataEntry(9, 2.327)); thirdEntries.Add(new ChartDataEntry(10, 2.047)); thirdEntries.Add(new ChartDataEntry(11, 1.618)); thirdEntries.Add(new ChartDataEntry(12, 1.146)); thirdEntries.Add(new ChartDataEntry(13, 0.753)); thirdEntries.Add(new ChartDataEntry(14, 0.542)); thirdEntries.Add(new ChartDataEntry(15, 0.562)); thirdEntries.Add(new ChartDataEntry(16, 0.797)); thirdEntries.Add(new ChartDataEntry(17, 1.169)); fourthEntries.Add(new ChartDataEntry(18, 1.574)); LineChartDataSet set1 = null; set1 = new LineChartDataSet(entries.ToArray(), " "); set1.LineWidth = 3f; set1.CircleRadius = 5f; set1.Mode = LineChartMode.CubicBezier; set1.DrawValuesEnabled = false; set1.SetColor(UIColor.White); set1.DrawFilledEnabled = true; set1.FillColor = UIColor.FromRGB(13, 168, 83); set1.FillAlpha = 255; set1.CircleHoleColor = UIColor.White; set1.SetCircleColor(UIColor.White); set1.DrawHorizontalHighlightIndicatorEnabled = false; LineChartDataSet set2 = null; set2 = new LineChartDataSet(secondEntries.ToArray(), " "); set2.LineWidth = 3f; set2.CircleRadius = 5f; set2.Mode = LineChartMode.CubicBezier; set2.DrawValuesEnabled = false; set2.SetColor(UIColor.White); set2.DrawFilledEnabled = true; set2.FillColor = UIColor.FromRGB(165, 43, 38); set2.FillAlpha = 255; set2.CircleHoleColor = UIColor.White; set2.SetCircleColor(UIColor.White); set2.DrawHorizontalHighlightIndicatorEnabled = false; LineChartDataSet set3 = null; set3 = new LineChartDataSet(thirdEntries.ToArray(), " "); set3.LineWidth = 3f; set3.CircleRadius = 5f; set3.Mode = LineChartMode.CubicBezier; set3.DrawValuesEnabled = false; set3.SetColor(UIColor.White); set3.DrawFilledEnabled = true; set3.FillColor = UIColor.FromRGB(13, 168, 83); set3.FillAlpha = 255; set3.CircleHoleColor = UIColor.White; set3.SetCircleColor(UIColor.White); set3.DrawHorizontalHighlightIndicatorEnabled = false; LineChartDataSet set4 = null; set4 = new LineChartDataSet(fourthEntries.ToArray(), " "); set4.LineWidth = 3f; set4.Mode = LineChartMode.CubicBezier; set4.DrawValuesEnabled = false; set4.DrawCirclesEnabled = false; set4.SetColor(UIColor.White); set4.DrawFilledEnabled = true; set4.FillColor = UIColor.FromRGB(13, 168, 83); set4.FillAlpha = 255; set4.CircleHoleColor = UIColor.White; set4.SetCircleColor(UIColor.Red); set4.DrawHorizontalHighlightIndicatorEnabled = false; List <LineChartDataSet> dataSets = new List <LineChartDataSet>(); dataSets.Add(set1); dataSets.Add(set2); dataSets.Add(set3); dataSets.Add(set4); var t = (IInterfaceChartDataSet[])dataSets.ToArray(); LineChartData data = new LineChartData(t); _chart.Data = data; }
public async Task <IActionResult> ProfileChartCategory(int categoryId) { var user = await _userManager.GetUserAsync(User); var tests = _context.Tests.Where(t => t.UserId == user.Id).Where(t => t.CategoryId == categoryId).ToList(); List <DateTime> dates = tests.Select(t => t.Date.Date).Distinct().ToList(); List <string> dateList = new List <string>(); foreach (var date in dates) { dateList.Add(date.Date.ToString("d/M/yyyy")); } string[] labels = dateList.ToArray(); List <int> passedExamensList = new List <int>(); List <int> examensList = new List <int>(); List <int> failedExamensList = new List <int>(); LineChartDataSet lineChartDataSet = new LineChartDataSet(); foreach (var date in dates) { passedExamensList.Add(tests.Where(c => c.Date.Date <= date).Where(c => c.Passed == true).Count()); examensList.Add(tests.Where(c => c.Date.Date <= date).Count()); failedExamensList.Add(tests.Where(c => c.Date.Date <= date).Where(c => c.Passed == false).Count()); } int[] passedExamens = passedExamensList.ConvertAll <int>(item => (int)item).ToArray(); int[] examens = examensList.ConvertAll <int>(item => (int)item).ToArray(); int[] failedExamens = failedExamensList.ConvertAll <int>(item => (int)item).ToArray(); LineChartDataSet passedExamensData = new LineChartDataSet() { data = passedExamens, label = "Examene trecute", borderColor = "#41924B", backgroundColor = "#41924B", fill = false }; LineChartDataSet examensData = new LineChartDataSet() { data = examens, label = "Numarul total de examene", borderColor = "#7195A3", backgroundColor = "#7195A3", fill = false }; LineChartDataSet failedExamendData = new LineChartDataSet() { data = failedExamens, label = "Numarul de examene picate", borderColor = "#BF381A", backgroundColor = "#BF381A", fill = false }; /* = passedExamensList.ConvertAll<int>(item => (int)item).ToArray();*/ LineChartData dataset = new LineChartData() { labels = labels, datasets = new LineChartDataSet[] { examensData, passedExamensData, failedExamendData } }; return(Json(dataset)); }