public ChartBase GetUsersStatus() { var query = _dashboardRepo.GetIqueryableUsers(); var activeUsersCount = query.Count(i => i.IsActive); var archivedUsersCount = query.Count(i => !i.IsActive); ChartBase chart = new DoughnutChart(); chart.Data = new DataModel { Labels = new List <string> { "Active users", "Archived users" }, Datasets = new List <DataSetModel> { new DataSetModel { Data = new List <int> { activeUsersCount, archivedUsersCount } } } }; return(chart); }
public ChartBase GetUsersTypeCount() { var query = _dashboardRepo.GetIqueryableUsers(); var officeManagers = query.Count(i => i.RoleID == RoleNames.OFFICE_MANAGER); var admins = query.Count(i => i.RoleID == RoleNames.ADMIN); var agents = query.Count(i => i.RoleID == RoleNames.AGENT); ChartBase chart = new DoughnutChart(); chart.Data = new DataModel { Labels = new List <string> { "Office manager", "Admin", "Agent" }, Datasets = new List <DataSetModel> { new DataSetModel { Data = new List <int> { officeManagers, admins, agents } } } }; return(chart); }
protected override void Dispose(bool disposing) { doughnutChart.Dispose(); DoughnutChart.Dispose(); chart.Dispose(); base.Dispose(disposing); }
public ChartBase GetAgentsVerificationStatus() { var query = _dashboardRepo.GetIqueryableUsers(); var verifiedAgents = query.Count (i => i.RoleID == RoleNames.AGENT && i.IsVerified); var pendingAgents = query.Count (i => i.RoleID == RoleNames.AGENT && !i.IsVerified); ChartBase chart = new DoughnutChart(); chart.Data = new DataModel { Labels = new List <string> { "Verified agents", "Pending agents" }, Datasets = new List <DataSetModel> { new DataSetModel { Data = new List <int> { verifiedAgents, pendingAgents } } } }; return(chart); }
private DoughnutChart GetDoughnutChart() { var chart = new DoughnutChart(); chart.ComplexData.Labels.AddRange(FakeComplexChartData.Labels); chart.ComplexData.Datasets.AddRange(FakeComplexChartData.Datasets); return(chart); }
private void uiSymbolButton1_Click(object sender, System.EventArgs e) { var option = new UIDoughnutOption(); //设置Title option.Title = new UITitle(); option.Title.Text = "SunnyUI"; option.Title.SubText = "Star"; option.Title.Left = UILeftAlignment.Center; //设置ToolTip option.ToolTip.Visible = true; //设置Legend option.Legend = new UILegend(); option.Legend.Orient = UIOrient.Vertical; option.Legend.Top = UITopAlignment.Top; option.Legend.Left = UILeftAlignment.Left; option.Legend.AddData("2020-05-19"); option.Legend.AddData("2020-05-20"); option.Legend.AddData("2020-05-21"); option.Legend.AddData("2020-05-22"); option.Legend.AddData("2020-05-23"); option.Legend.AddData("2020-05-24"); option.Legend.AddData("2020-05-25"); //设置Series var series = new UIDoughnutSeries(); series.Name = "StarCount"; series.Center = new UICenter(50, 55); series.Radius.Inner = 40; series.Radius.Outer = 70; series.Label.Show = true; series.Label.Position = UIPieSeriesLabelPosition.Center; //增加数据 series.AddData("2020-05-19", 38); series.AddData("2020-05-20", 21); series.AddData("2020-05-21", 11); series.AddData("2020-05-22", 52); series.AddData("2020-05-23", 23); series.AddData("2020-05-24", 26); series.AddData("2020-05-25", 27); //增加Series option.Series.Clear(); option.Series.Add(series); //设置Option DoughnutChart.SetOption(option); uiSymbolButton2.Enabled = true; }
private void uiSymbolButton2_Click(object sender, System.EventArgs e) { Random random = new Random(DateTime.Now.Millisecond); DoughnutChart.Update("StarCount", "2020-05-19", random.Next(50)); DoughnutChart.Update("StarCount", "2020-05-20", random.Next(50)); DoughnutChart.Update("StarCount", "2020-05-21", random.Next(50)); DoughnutChart.Update("StarCount", "2020-05-22", random.Next(50)); DoughnutChart.Update("StarCount", "2020-05-23", random.Next(50)); DoughnutChart.Update("StarCount", "2020-05-24", random.Next(50)); DoughnutChart.Update("StarCount", "2020-05-25", random.Next(50)); DoughnutChart.Refresh(); }
public static DoughnutChart GetAverageGamePriceDoughnut(IList<DetailedStatistics> detailedStatistics) { var allReports = detailedStatistics.SelectMany(s => s.Reports).ToList(); var averagePrice = allReports.Sum(r => r.Cost) / allReports.Count(); var averageGamePriceDoughnut = new DoughnutChart(); averageGamePriceDoughnut.Data = new List<SimpleData>() { new SimpleData() { Value = averagePrice, Label = "Средняя цена за игру", Color = Colors.Blue } }; averageGamePriceDoughnut.ChartConfiguration.Responsive = true; return averageGamePriceDoughnut; }
public static DoughnutChart GetAverageGameDurationPriceDoughnut(IList<DetailedStatistics> detailedStatistics) { var allReports = detailedStatistics.SelectMany(s => s.Reports).ToList(); var averageDuration = allReports.Sum(r => r.ElapsedTime) / allReports.Count(); var averageGameDirationDoughnut = new DoughnutChart(); averageGameDirationDoughnut.Data = new List<SimpleData>() { new SimpleData() { Value = averageDuration, Label = "Среднее время одной игры", Color = Colors.Blue } }; averageGameDirationDoughnut.ChartConfiguration.Responsive = true; return averageGameDirationDoughnut; }
public AnalysisPage() { this.InitializeComponent(); this.navigationHelper = new NavigationHelper(this); this.navigationHelper.LoadState += navigationHelper_LoadState; this.navigationHelper.SaveState += navigationHelper_SaveState; sexGraph = AnalysisSexGraph; marriedGraph = AnalysisMarriedGraph; cityGraph = AnalysisCityGraph; bloodGraph = AnalysisBloodGraph; diseaseGraph = AnalysisDiseaseGraph; addictionGraph = AnalysisAddictionGraph; allergyGraph = AnalysisAllergyGraph; operationGraph = AnalysisOperationGraph; vaccineGraph = AnalysisVaccineGraph; settings = new SettingsFlyout1(); }
private void ToggleCircle() { IsCricle = !IsCricle; DoughnutChart?.SetAngle(IsCricle ? 360 : 0); DoughnutChart?.Update("setAngle"); }
public void SetData(IEnumerable <ChartData> data) { DoughnutChart.SetData(data); HorizontalBarChart.SetData(data); }
/// <summary> /// This is the method that actually does the work. /// </summary> /// <param name="DA">The DA object is used to retrieve from inputs and store in outputs.</param> protected override void SolveInstance(IGH_DataAccess DA) { var Collection = new ObservableCollection <ChartItem>(); string Title = ""; string SubTitle = ""; List <double> listContents = new List <double>(); List <string> names = new List <string>(); int chartType = 0; //get GH input data DA.GetDataList <double>("Data", listContents); DA.GetDataList <string>("Names", names); bool hasTitle = DA.GetData <string>("Title", ref Title); bool hasSubTitle = DA.GetData <string>("SubTitle", ref SubTitle); DA.GetData <int>("Chart Type", ref chartType); ChartBase ChartElem = null; switch (chartType) { case 0: var pieElem = new PieChart(); ChartElem = pieElem; break; case 1: var barElem = new ClusteredBarChart(); ChartElem = barElem; break; case 2: var columnElem = new ClusteredColumnChart(); ChartElem = columnElem; break; case 3: var doughnutElem = new DoughnutChart(); ChartElem = doughnutElem; break; case 4: var gaugeElem = new RadialGaugeChart(); ChartElem = gaugeElem; break; default: var defaultElem = new PieChart(); ChartElem = defaultElem; break; } //Create the chart and give it a name ChartElem.ChartTitle = Title; ChartElem.ChartTitleVisibility = hasTitle ? Visibility.Visible : Visibility.Collapsed; ChartElem.ChartSubTitle = SubTitle; //package the data into a custom chart model and series SeriesModel vm = new SeriesModel(names.ToList(), listContents.ToList()); ChartElem.DataContext = vm; ChartSeries series = new ChartSeries(); series.SeriesTitle = " "; series.DisplayMember = "Category"; series.ValueMember = "Number"; //set up the data binding for the series - this is useful so it can be reset later without redrawing the whole Chart Binding seriesBinding = new Binding(); seriesBinding.Source = vm; seriesBinding.Path = new PropertyPath("Chart"); BindingOperations.SetBinding(series, ChartSeries.ItemsSourceProperty, seriesBinding); // series.ItemsSource = vm.Chart; //Pass data to the chart ChartElem.Series.Add(series); ChartElem.ToolTipFormat = "{}Caption: {0}, Value: '{1}', Series: '{2}', Percentage: {3:P2}"; ChartElem.MinWidth = 10; ChartElem.MinHeight = 10; DA.SetData("Chart", new UIElement_Goo(ChartElem, "Chart Elem", InstanceGuid, DA.Iteration)); }
private async Task ToggleCircle() { IsCircle = !IsCircle; Angle = IsCircle ? 360 : 0; await DoughnutChart.Update(ChartAction.SetAngle); }
public OpenXmlPieChart(OpenXmlChartSpace chartSpace, DoughnutChart doughnutChart) { this.chartSpace = chartSpace; this.doughnutChart = doughnutChart; }