private void BuildChart(RadChart chart, DataTable seriesData) { // Handle Legend Labels chart.Series.Clear(); var nSeries = new ChartSeries(); var nSeries2 = new ChartSeries(); nSeries.Name = "School %"; nSeries2.Name = "District %"; chart.Legend.Appearance.ItemTextAppearance.AutoTextWrap = AutoTextWrap.False; //double minval = 100; //double maxval = 0; ChartAxisItemsCollection caic = new ChartAxisItemsCollection(); var year_list = new List<String>(); // Begin Experience tab foreach (DataRow dr in seriesData.Rows) { var myItem = new ChartSeriesItem(DataIntegrity.ConvertToDouble(dr["SuspensionRate"]), dr["LevelLabel"].ToString()) { Name = dr["SchoolYear"].ToString() }; if (String.IsNullOrEmpty(dr["SuspensionRate"].ToString())) myItem.Appearance.Visible = false; // hide bar and text if the value is null (no data) //myItem.Label.Appearance.LabelLocation = StyleSeriesItemLabel.ItemLabelLocation.Auto; if (dr["Level"].Equals("District")) { nSeries2.AddItem(myItem); } else { nSeries.AddItem(myItem); } year_list.Add(dr["SchoolYear"].ToString()); //if (minval > DataIntegrity.ConvertToDouble(dr["SuspensionRate"])) minval = DataIntegrity.ConvertToDouble(dr["SuspensionRate"]); //if (maxval < DataIntegrity.ConvertToDouble(dr["SuspensionRate"])) maxval = DataIntegrity.ConvertToDouble(dr["SuspensionRate"]); } foreach (var yl in year_list.Distinct()) { ChartAxisItem ai = new ChartAxisItem(); ai.TextBlock.Text = yl; caic.Add(ai); } chart.PlotArea.XAxis.AddItem(caic); chart.PlotArea.YAxis.MinValue = 0; //chart.PlotArea.YAxis.Step = (maxval - (minval - 5)) / 2; chart.PlotArea.YAxis.Step = 5; chart.PlotArea.YAxis.AutoScale = true; //chart.PlotArea.YAxis.MaxValue = maxval == 100 ? maxval : maxval + 5; //chart.PlotArea.YAxis.a = maxval == 100 ? maxval : maxval + 5; chart.Series.Add(nSeries); chart.Series.Add(nSeries2); chart.ChartTitle.Visible = false; chart.SetSkin("SuspensionRate"); }
private void iniChart(AriClinicContext ctx1) { ctx1 = new AriClinicContext("AriClinicContext"); IList<Professional> prof = CntAriCli.GetProfessionalTickets(fromDate, toDate, ctx1); chart1.PlotArea.XAxis.AutoScale = true; chart1.PlotArea.XAxis.Items.Clear(); chart1.AutoLayout = true; chart1.ChartTitle.TextBlock.Visible=false;//.Text = "Servicios por profesional."; chart1.PlotArea.Appearance.FillStyle.FillType = Telerik.Reporting.Charting.Styles.FillType.Solid; chart1.PlotArea.Appearance.FillStyle.MainColor = Color.Transparent; ChartSeries chartSeries1 = new ChartSeries(); chartSeries1.Type = ChartSeriesType.Pie; chartSeries1.Appearance.LegendDisplayMode = ChartSeriesLegendDisplayMode.ItemLabels; foreach (Professional item in prof) { ChartSeriesItem serieItem = new ChartSeriesItem(); serieItem.YValue = (from tic in item.Tickets where tic.TicketDate >= fromDate && tic.TicketDate <= toDate select tic).ToList<Ticket>().Count(); serieItem.Name = item.FullName; serieItem.Label.TextBlock.Text = item.Tickets.Count.ToString(); serieItem.Appearance.Exploded = true; chartSeries1.Items.Add(serieItem); } chart1.Series.Clear(); chart1.Series.AddRange(new Telerik.Reporting.Charting.ChartSeries[] { chartSeries1 }); }
private void iniChart(AriClinicContext ctx1) { ctx1 = new AriClinicContext("AriClinicContext"); IList<Professional> prof = CntAriCli.GetSurgeonTickets(fromDate, toDate, ctx1); chart1.PlotArea.XAxis.AutoScale = true; chart1.PlotArea.XAxis.Items.Clear(); chart1.AutoLayout = true; chart1.ChartTitle.TextBlock.Visible=false;//.Text = "Servicios por profesional."; chart1.PlotArea.Appearance.FillStyle.FillType = Telerik.Reporting.Charting.Styles.FillType.Solid; chart1.PlotArea.Appearance.FillStyle.MainColor = Color.Transparent; ChartSeries chartSeries1 = new ChartSeries(); chartSeries1.Type = ChartSeriesType.Pie; chartSeries1.Appearance.LegendDisplayMode = ChartSeriesLegendDisplayMode.ItemLabels; foreach (Professional item in prof) { ChartSeriesItem serieItem = new ChartSeriesItem(); int num = CntAriCli.GetTicketsByCirujano(fromDate, toDate, item.PersonId.ToString(), ctx1).Count; if (num > 0) { serieItem.YValue = num; serieItem.Name = item.FullName; serieItem.Label.TextBlock.Text = num.ToString(); serieItem.Appearance.Exploded = true; chartSeries1.Items.Add(serieItem); } } chart1.Series.Clear(); chart1.Series.AddRange(new Telerik.Reporting.Charting.ChartSeries[] { chartSeries1 }); }
protected override Image DoCreateChartImage() { var radChart = new RadChart {Width = Parameters.ChartWidth, Height = Parameters.ChartHeight}; var tmpSeries = new ChartSeries() { Type = ChartSeriesType.Line }; foreach (var point in Parameters.SeriaData) tmpSeries.Items.Add(new ChartSeriesItem(point.Key, point.Value)); radChart.AddChartSeries(tmpSeries); return radChart.GetBitmap(); }
public void Assign(ChartSeries[] items, int firstFrame, int firstSelectableFrame) { this.charts = items; this.firstFrame = firstFrame; this.firstSelectableFrame = firstSelectableFrame; if (this.chartOrder != null && this.chartOrder.Length == items.Length) return; this.chartOrder = new int[items.Length]; for (int index = 0; index < this.chartOrder.Length; ++index) this.chartOrder[index] = this.chartOrder.Length - 1 - index; }
public void Generate(BudgetDTO[] budget, Int32 money) { Chart = new ChartType() { Type = "areaspline" }; Title = new Title() { Text = "Budget report" }; Subtitle = new Title() { Text = "Current session" }; XAxis = new XAxis() { Categories = budget.Select(x => x.Name).ToArray() }; YAxis = new YAxis() { Title = new Title() { Text = "Budget" } }; Tooltip = new Tooltip() { Shared = true, ValueSuffix = " money" }; Series = new ChartSeries[] { new ChartSeries() { Name = "Current", Data = budget.Select(x => (Int32)(x.Value)).ToArray() } }; }
private void BuildInscriptionDayChart() { radChartInscriptionDay.ChartTitle.TextBlock.Text = ResourceManager.GetString("lblEvolutionByDay"); radChartInscriptionDay.Chart.Series.Clear(); radChartInscriptionDay.PlotArea.Appearance.Dimensions.Margins.Left = 80; radChartInscriptionDay.PlotArea.Appearance.Dimensions.Margins.Right = 80; radChartInscriptionDay.PlotArea.Appearance.Dimensions.Margins.Top = 60; radChartInscriptionDay.PlotArea.Appearance.Dimensions.Margins.Bottom = 60; radChartInscriptionDay.PlotArea.YAxis.AxisLabel.TextBlock.Text = ResourceManager.GetString("lblStatisticsNbrOfCandidates"); radChartInscriptionDay.PlotArea.YAxis.AxisLabel.TextBlock.Appearance.TextProperties.Font = new Font("Arial", 12, FontStyle.Bold); radChartInscriptionDay.PlotArea.YAxis.AxisLabel.Visible = true; radChartInscriptionDay.PlotArea.YAxis.VisibleValues = ChartAxisVisibleValues.Positive; radChartInscriptionDay.PlotArea.XAxis.AxisLabel.TextBlock.Text = ResourceManager.GetString("dayText"); radChartInscriptionDay.PlotArea.XAxis.AxisLabel.TextBlock.Appearance.TextProperties.Font = new Font("Arial", 12, FontStyle.Bold); radChartInscriptionDay.PlotArea.XAxis.AxisLabel.Visible = true; radChartInscriptionDay.PlotArea.XAxis.Appearance.TextAppearance.TextProperties.Font = new Font("Arial", 10); radChartInscriptionDay.PlotArea.XAxis.AutoScale = false; radChartInscriptionDay.PlotArea.XAxis.LayoutMode = ChartAxisLayoutMode.Between; ChartSeries daySeries = new ChartSeries("Day", ChartSeriesType.Bar); daySeries.Appearance.FillStyle.MainColor = Color.LightBlue; daySeries.Appearance.FillStyle.FillType = FillType.Solid; daySeries.Appearance.TextAppearance.Visible = true; radChartInscriptionDay.AddChartSeries(daySeries); radChartInscriptionDay.PlotArea.XAxis.AddItem("D - 4"); radChartInscriptionDay.PlotArea.XAxis.AddItem("D - 3"); radChartInscriptionDay.PlotArea.XAxis.AddItem("D - 2"); radChartInscriptionDay.PlotArea.XAxis.AddItem("D - 1"); radChartInscriptionDay.PlotArea.XAxis.AddItem("Today"); DateTime currentDay = DateTime.Today; //currentDay = currentDay.AddYears(-3); int day4No = NeosDAO.GetNumberOfCandiatesInscription( currentDay.AddDays(-4), currentDay.AddDays(-3).AddSeconds(-1)); int day3No = NeosDAO.GetNumberOfCandiatesInscription( currentDay.AddDays(-3), currentDay.AddDays(-2).AddSeconds(-1)); int day2No = NeosDAO.GetNumberOfCandiatesInscription( currentDay.AddDays(-2), currentDay.AddDays(-1).AddSeconds(-1)); int day1No = NeosDAO.GetNumberOfCandiatesInscription( currentDay.AddDays(-1), currentDay.AddSeconds(-1)); int dayNo = NeosDAO.GetNumberOfCandiatesInscription( currentDay, DateTime.Now); daySeries.AddItem(day4No); daySeries.AddItem(day3No); daySeries.AddItem(day2No); daySeries.AddItem(day1No); daySeries.AddItem(dayNo); }
private void BuildCandidateLocationChart() { radChartCandidateLocation.ChartTitle.TextBlock.Text = ResourceManager.GetString("hypCandidateLocation"); radChartCandidateLocation.Chart.Series.Clear(); radChartCandidateLocation.PlotArea.Appearance.Dimensions.Margins.Left = 80; radChartCandidateLocation.PlotArea.Appearance.Dimensions.Margins.Right = 100; radChartCandidateLocation.PlotArea.Appearance.Dimensions.Margins.Top = 60; radChartCandidateLocation.PlotArea.Appearance.Dimensions.Margins.Bottom = 200; radChartCandidateLocation.PlotArea.YAxis.AxisLabel.TextBlock.Text = ResourceManager.GetString("lblStatisticsNbrOfCandidates"); radChartCandidateLocation.PlotArea.YAxis.AxisLabel.TextBlock.Appearance.TextProperties.Font = new Font("Arial", 12, FontStyle.Bold); radChartCandidateLocation.PlotArea.YAxis.AxisLabel.Visible = true; radChartCandidateLocation.PlotArea.YAxis.VisibleValues = ChartAxisVisibleValues.Positive; radChartCandidateLocation.PlotArea.XAxis.AxisLabel.TextBlock.Text = ResourceManager.GetString("lblStatisticsLocation"); radChartCandidateLocation.PlotArea.XAxis.AxisLabel.TextBlock.Appearance.TextProperties.Font = new Font("Arial", 12, FontStyle.Bold); radChartCandidateLocation.PlotArea.XAxis.AxisLabel.Visible = true; radChartCandidateLocation.PlotArea.XAxis.Appearance.TextAppearance.TextProperties.Font = new Font("Arial", 10); radChartCandidateLocation.PlotArea.XAxis.AutoScale = false; radChartCandidateLocation.PlotArea.XAxis.LayoutMode = ChartAxisLayoutMode.Between; radChartCandidateLocation.PlotArea.XAxis.Appearance.LabelAppearance.RotationAngle = 90; radChartCandidateLocation.PlotArea.XAxis.Appearance.LabelAppearance.Position.AlignedPosition = AlignedPositions.Top; radChartCandidateLocation.PlotArea.XAxis.Appearance.LabelAppearance.Position.Auto = false; radChartCandidateLocation.PlotArea.XAxis.Appearance.LabelAppearance.Position.X = 0; radChartCandidateLocation.PlotArea.XAxis.Appearance.LabelAppearance.Position.Y = 0; ChartSeries locationSeries = new ChartSeries("Location", ChartSeriesType.Bar); locationSeries.Appearance.FillStyle.MainColor = Color.LightSteelBlue; locationSeries.Appearance.FillStyle.FillType = FillType.Solid; locationSeries.Appearance.TextAppearance.Visible = true; radChartCandidateLocation.AddChartSeries(locationSeries); IList<ParamLocations> locationList = new ParamLocationsRepository().GetAllLocations(); foreach (ParamLocations location in locationList) { radChartCandidateLocation.PlotArea.XAxis.AddItem(location.Location.Trim()); int number = NeosDAO.GetNumberOfCandiateByLocation(location.Location.Trim(), location.LocationUk.Trim(), location.LocationNL.Trim()); locationSeries.AddItem(number); } }
private void BindReportGrid() { DataTable reportData = ReportProvider.GetReportByAccounts(SessionManager.CurrentUser.Id); DataTable xAxisItems = DataTableUtility.SelectDistinct(reportData, "Date"); rcReport.XAxis.Clear(); foreach (DataRow row in xAxisItems.Rows) { DateTime date = (DateTime) row["Date"]; rcReport.XAxis.AddItem(date.ToString("MM/dd/yyyy")); } DataTable accounts = DataTableUtility.SelectDistinct(reportData, "AccountId"); foreach (DataRow accountRow in accounts.Rows) { int accountId = (int) accountRow["AccountId"]; Account account = AccountProvider.Get<Account>(accountId); ChartSeries series = new ChartSeries(account.Name, _currentColor, ChartSeriesType.Line); series.PointMark = ChartPointMark.None; series.ShowLabels = false; DataTable dates = DataTableUtility.SelectDistinct(reportData, "Date"); foreach (DataRow dateRow in dates.Rows) { DateTime date = (DateTime) dateRow["Date"]; double balance = 0; string expression = string.Format("AccountId='{0}' and Date='{1}'", accountId, date); DataRow[] founded = reportData.Select(expression); if (founded.Length > 0) { balance = Convert.ToDouble(founded[0]["Balance"]); } series.AddItem(balance); } rcReport.AddChartSeries(series); SetNextColor(); } }
private void Draw() { try { chartControl1.Series.Clear(); ChartSeries seriesFail = new ChartSeries("Fail", ChartSeriesType.StackingColumn); ChartSeries seriesSuccess = new ChartSeries("Success", ChartSeriesType.StackingColumn); foreach (DataRow dr in dsHistory.Tables[0].Rows) { if (dr["Name"].ToString().Equals(cboTypes.Text)) { seriesSuccess.Points.Add(Convert.ToDateTime(dr["Date"]), Convert.ToDouble(dr["TotalSuccess"])); seriesFail.Points.Add(Convert.ToDateTime(dr["Date"]), Convert.ToDouble(dr["TotalFail"])); } } chartControl1.Series.Add(seriesFail); chartControl1.Series.Add(seriesSuccess); chartControl1.PrimaryXAxis.RangeType = ChartAxisRangeType.Auto; chartControl1.PrimaryYAxis.RangeType = ChartAxisRangeType.Auto; chartControl1.PrimaryXAxis.AutoSize = true; chartControl1.PrimaryYAxis.AutoSize = true; chartControl1.PrimaryXAxis.Font = new Font("Arial", 9F, System.Drawing.FontStyle.Regular); chartControl1.PrimaryYAxis.Font = new Font("Arial", 9F, System.Drawing.FontStyle.Regular); chartControl1.PrimaryXAxis.TickLabelsDrawingMode = ChartAxisTickLabelDrawingMode.BothUserAndAutomaticMode; chartControl1.PrimaryXAxis.DateTimeFormat = "MM/dd/yyyy"; chartControl1.PrimaryXAxis.LabelRotate = true; chartControl1.PrimaryXAxis.LabelRotateAngle = 45; } catch (Exception ex) { Console.Write(ex); } }
private void cbQuestao_SelectedIndexChanged(object sender, EventArgs e) { GraficoController gc = new GraficoController(); ChartSeries cs = new ChartSeries(); GraficoModel gm = new GraficoModel(); int questao, max; chartQuest.Series.Clear(); chartQuest.Text = cbQuestao.Text; questao = cbQuestao.SelectedIndex + 1; max = gm.tamanhoAlternativas(questao); limiteAxisX(max); cs = gc.gerarGrafico(questao); cs.Type = ChartSeriesType.Column; chartQuest.Legend.Visible = false; this.chartQuest.Series.Add(cs); this.chartQuest.PrimaryXAxis.RangeType = Syncfusion.Windows.Forms.Chart.ChartAxisRangeType.Set; this.chartQuest.PrimaryXAxis.Range.Interval = 1; Estilo(); chartQuest.ChartFormatAxisLabel += new ChartFormatAxisLabelEventHandler(chartQuest_ChartFormatAxisLabel); }
protected void BindChartDataSource() { List<Calced> source; if (CurrentRights.Contains(HomoryCoreConstant.RightGlobal)) { source = HomoryContext.Value.ViewQueryTaught.GroupBy(o => o.课程名称).Select(o => new Calced { Name = o.Key, Num = o.Count() }).ToList(); } else { var campus = CurrentCampus.Name; source = HomoryContext.Value.ViewQueryTaught.Where(o => o.学校 == campus).GroupBy(o => o.课程名称).Select(o => new Calced { Name = o.Key, Num = o.Count() }).ToList(); } c.Series.Clear(); var cs = new ChartSeries { DataLabelsColumn = "Name", DataYColumn = "Num", Type = ChartSeriesType.Pie }; cs.Appearance.ShowLabelConnectors = true; c.Series.Add(cs); c.Series[0].Appearance.LegendDisplayMode = ChartSeriesLegendDisplayMode.ItemLabels; c.DataSource = source; c.DataBind(); foreach (var p in c.Series[0].Items) { p.Label.TextBlock.Text = string.Format("{0} ({1})", p.Label.TextBlock.Text , p.YValue.ToString()); } }
private void rptChartInboxMonthly_NeedDataSource(object sender, EventArgs e) { //Get Month and Year of all surat masuk //SuratkeluarQuery skq = new SuratkeluarQuery(); //skq.Select(skq.Tanggal); //skq.es.Distinct = true; SuratkeluarQuery skQ = new SuratkeluarQuery("a"); NomorQuery nQ = new NomorQuery("b"); skQ.Select(nQ.Keterangan,skQ.Nomorid, skQ.Nomor.Count().As("jumlahsurat")); skQ.InnerJoin(nQ).On(skQ.Nomorid == nQ.Format); skQ.GroupBy(skQ.Nomorid); SuratkeluarCollection skC = new SuratkeluarCollection(); skC.Load(skQ); if (skC.Count > 0) { foreach (Suratkeluar sk in skC) { try { string jumlahSurat = sk.GetColumn("jumlahsurat").ToString(); //string Keterangan = sk.GetColumn(NomorMetadata.ColumnNames.Keterangan).ToString(); double JumlahSurat = 0; if (!double.TryParse(jumlahSurat, out JumlahSurat)) JumlahSurat = 0; ChartSeries cs = new ChartSeries(); cs.Name = "Surat Keluar"; cs.Type = ChartSeriesType.Bar; cs.AddItem(JumlahSurat, sk.Nomorid); this.chartSuratMasuk.Series.Add(cs); } catch (Exception ex) { Ext.Net.X.Msg.Alert("error",ex.Message).Show(); } } } }
private static bool HasDataPointsInPlotRange(ChartSeries series) { IList<DataPoint> dataPoints = GetDataPoints(series); foreach (DataPoint dp in dataPoints) { if (dp.IsInPlotRange) { return true; } } return false; }
private static void DispatchRunSeriesAnimations(ChartSeries series) { series.Dispatcher.BeginInvoke((Action)(() => TryRunSeriesAnimation(series))); }
public void InitialiseData() { chartControl1.Series.Clear(); Random random = new Random(); ChartSeries series1 = new ChartSeries(); series1.Name = "Year 2006"; series1.Text = series1.Name; series1.Points.Add(0, 20); series1.Points.Add(2, 18); series1.Points.Add(3, 21); series1.Points.Add(4, 23); series1.Points.Add(5, 18); SeriesSettings(series1); this.chartControl1.Series.Add(series1); ChartSeries series2 = new ChartSeries(); series2.Name = "Year 2007"; series2.Text = series2.Name; series2.Points.Add(0, 12); series2.Points.Add(2, 21); series2.Points.Add(3, 18); series2.Points.Add(4, 25); series2.Points.Add(5, 24); SeriesSettings(series2); this.chartControl1.Series.Add(series2); ChartSeries series3 = new ChartSeries(); series3.Name = "Year 2008"; series3.Text = series3.Name; series3.Points.Add(0, 18); series3.Points.Add(2, 12); series3.Points.Add(3, 18); series3.Points.Add(4, 21); series3.Points.Add(5, 31); SeriesSettings(series3); this.chartControl1.Series.Add(series3); //Enable MultiplePies property to enable this feature. chartControl1.ChartArea.MultiplePies = true; this.chartControl1.ShowLegend = true; series1.Type = ChartSeriesType.Pie; series2.Type = ChartSeriesType.Pie; series3.Type = ChartSeriesType.Pie; //Each series must have DoughnutCoEfficient value [except the most inner series example: series1], to get the complete functionality of this feature. series2.ConfigItems.PieItem.DoughnutCoeficient = 0.7f; series3.ConfigItems.PieItem.DoughnutCoeficient = 0.8f; series3.ConfigItems.PieItem.AngleOffset = 130f; series2.ConfigItems.PieItem.AngleOffset = 130f; series1.ConfigItems.PieItem.AngleOffset = 130f; ChartLegend chartLegend = new ChartLegend(); chartLegend.Name = "Legend 1"; string[] label = new string[] { "Engineering-13.33%", "Medical Sciences-16.67%", "BioTechnology-30%", "Information Services-23%", "Economics -27%" }; List <ChartLegendItem> items = new List <ChartLegendItem>(); for (int i = 0; i < 5; i++) { ChartLegendItem legendItem = new ChartLegendItem(label[i]); legendItem.Font = new Font("Segoe UI", 9, FontStyle.Regular); legendItem.RepresentationSize = new Size(16, 16); items.Add(legendItem); } chartControl1.Legend.RepresentationType = ChartLegendRepresentationType.SeriesType; chartControl1.Legend.CustomItems = items.ToArray(); chartControl1.Legend.RowsCount = 5; this.chartControl1.LegendAlignment = ChartAlignment.Center; this.chartControl1.SmoothingMode = SmoothingMode.AntiAlias; this.chartControl1.Legend.DrawItemText += new LegendDrawItemTextEventHandler(Legend_DrawItemText); if (ckBxEnable3D.Checked) { this.lblPieHeight.Visible = true; this.nUpDownPieHeight.Visible = true; } else { this.lblPieHeight.Visible = false; this.nUpDownPieHeight.Visible = false; } }
private void updateRssiChart() { if (this.chartRssi != null) { ChartSeries[] seriesArray = new ChartSeries[this._maxLineCount]; for (int i = 0; i < this._maxLineCount; i++) { int num4 = i + 1; seriesArray[i] = new ChartSeries(this._linePrefix + num4.ToString(), ChartSeriesType.Line); seriesArray[i].Style.GdipPen.Width = 1f; seriesArray[i].Style.GdipPen.Color = Color.DarkBlue; } this.chartRssi.Series.Clear(); for (int j = 0; j < this._maxLineCount; j++) { for (int k = 0; k < this._rssiLines[j].Count; k++) { seriesArray[j].Points.Add((double) k, this._rssiLines[j][k]); } this.chartRssi.Series.Add(seriesArray[j]); } } }
private void ChartControlData() { this.chartControl1.Series.Clear(); this.chartControl1.Dock = DockStyle.Fill; ChartAxis axis = this.chartControl1.PrimaryYAxis; ChartAxis axis0 = new ChartAxis(ChartOrientation.Vertical); ChartAxis axis1 = new ChartAxis(ChartOrientation.Vertical); ChartAxis axis2 = new ChartAxis(ChartOrientation.Vertical); ChartAxis axis3 = new ChartAxis(ChartOrientation.Vertical); ChartAxis axis4 = new ChartAxis(ChartOrientation.Vertical); ChartAxisLayout layout1 = new ChartAxisLayout(); ChartAxisLayout layout2 = new ChartAxisLayout(); chartControl1.Axes.Add(axis0); chartControl1.Axes.Add(axis1); chartControl1.Axes.Add(axis2); chartControl1.Axes.Add(axis3); chartControl1.Axes.Add(axis4); layout1.Spacing = 12; layout2.Spacing = 12; layout2.Axes.Add(axis); layout2.Axes.Add(axis0); layout2.Axes.Add(axis1); layout1.Axes.Add(axis2); layout1.Axes.Add(axis3); layout1.Axes.Add(axis4); chartControl1.ChartArea.YLayouts.Add(layout1); chartControl1.ChartArea.YLayouts.Add(layout2); ChartSeries population = new ChartSeries("Population", ChartSeriesType.Column); population.Points.Add(0, 1.3); population.Points.Add(1, 1); population.Points.Add(2, 0.5); population.Points.Add(3, 0.3); ChartSeries Growth = new ChartSeries("Growth[%]", ChartSeriesType.Column); Growth.Points.Add(0, 0.7); Growth.Points.Add(1, 1.6); Growth.Points.Add(2, 0.7); Growth.Points.Add(3, 0.4); ChartSeries Birthrate = new ChartSeries("BirthRate", ChartSeriesType.Column); Birthrate.Points.Add(0, 15); Birthrate.Points.Add(1, 27); Birthrate.Points.Add(2, 17); Birthrate.Points.Add(3, 24); population.YAxis = axis; Growth.YAxis = axis0; Birthrate.YAxis = axis1; axis.Title = "Population (Million)"; axis.TitleFont = new Font("Segeo UI", 12F); axis0.Title = "Growth [%]"; axis0.TitleFont = new Font("Segeo UI", 12F); axis1.Title = "Birthrate"; axis1.TitleFont = new Font("Segeo UI", 12F); ChartSeries GDP = new ChartSeries("GDP in 2000 ", ChartSeriesType.Line); GDP.Points.Add(0, 10); GDP.Points.Add(1, 5); GDP.Points.Add(2, 85); GDP.Points.Add(3, 5); GDP.Style.Interior = new Syncfusion.Drawing.BrushInfo(Color.FromArgb(0xFF, 0xA2, 0xC1, 0x39)); GDP.Style.Border.Width = 2; ChartSeries Lifeexpect = new ChartSeries("Life Expect", ChartSeriesType.Spline); Lifeexpect.Points.Add(0, 70); Lifeexpect.Points.Add(1, 65); Lifeexpect.Points.Add(2, 85); Lifeexpect.Points.Add(3, 65); Lifeexpect.Style.Interior = new Syncfusion.Drawing.BrushInfo(Color.FromArgb(0xFF, 0xA0, 0x50, 0x00)); Lifeexpect.Style.Border.Width = 2; ChartSeries Literacy = new ChartSeries("Literacy", ChartSeriesType.SplineArea); Literacy.Points.Add(0, 85); Literacy.Points.Add(1, 55); Literacy.Points.Add(2, 35); Literacy.Points.Add(3, 95); Literacy.Style.Border.Color = Color.Transparent; Literacy.Style.Interior = new Syncfusion.Drawing.BrushInfo(Color.FromArgb(0xFF, 0xE6, 0x71, 0xB8)); this.chartControl1.Title.Visible = false; ChartAxis Xaxis = new ChartAxis(); Xaxis.Orientation = ChartOrientation.Horizontal; Xaxis.OpposedPosition = true; Xaxis.Range = new MinMaxInfo(-1, 4, 1); Xaxis.DrawGrid = false; Xaxis.LineType.Width = 1F; Xaxis.LineType.ForeColor = Color.Black; this.chartControl1.Axes.Add(Xaxis); GDP.YAxis = axis2; GDP.XAxis = Xaxis; Lifeexpect.YAxis = axis3; Lifeexpect.XAxis = Xaxis; Literacy.YAxis = axis4; Literacy.XAxis = Xaxis; axis2.Title = "GDP pc in 1000"; axis2.TitleFont = new Font("Segeo UI", 12F); axis3.Title = "Lifeexpect"; axis3.TitleFont = new Font("Segeo UI", 12F); axis4.Title = "Literacy"; axis4.TitleFont = new Font("Segeo UI", 12F); this.chartControl1.Series.Add(population); this.chartControl1.Series.Add(Growth); this.chartControl1.Series.Add(Birthrate); this.chartControl1.Series.Add(GDP); this.chartControl1.Series.Add(Lifeexpect); this.chartControl1.Series.Add(Literacy); this.chartControl1.Skins = Skins.Metro; axis1.OpposedPosition = true; axis1.DrawGrid = false; axis.EdgeLabelsDrawingMode = ChartAxisEdgeLabelsDrawingMode.Shift; axis0.EdgeLabelsDrawingMode = ChartAxisEdgeLabelsDrawingMode.Shift; axis1.EdgeLabelsDrawingMode = ChartAxisEdgeLabelsDrawingMode.Shift; axis2.OpposedPosition = true; axis0.DrawGrid = true; axis.DrawGrid = false; axis2.DrawGrid = false; axis2.DrawGrid = true; axis3.DrawGrid = false; axis4.DrawGrid = false; axis2.EdgeLabelsDrawingMode = ChartAxisEdgeLabelsDrawingMode.Shift; axis3.EdgeLabelsDrawingMode = ChartAxisEdgeLabelsDrawingMode.Shift; axis4.EdgeLabelsDrawingMode = ChartAxisEdgeLabelsDrawingMode.Shift; }
protected void CreateParetoChart() { this.chartControl.Title.Text = "Pareto Chart"; this.chartControl.Series.Clear(); ChartSeries series1 = new ChartSeries("Defects"); series1.Type = ChartSeriesType.Column; series1.Points.Add(1, 120); series1.Points.Add(2, 60); series1.Points.Add(3, 50); series1.Points.Add(4, 40); series1.Points.Add(5, 20); series1.Points.Add(6, 10); //series1.Style.Interior = new BrushInfo(Color.FromArgb(200, 140, 198, 62)); //series1.Style.Border.Color = Color.Transparent; this.chartControl.Series.Add(series1); this.chartControl.PrimaryXAxis.FormatLabel += new ChartFormatAxisLabelEventHandler(PrimaryXAxis_FormatLabel); this.chartControl.PrimaryXAxis.HidePartialLabels = true; this.chartControl.PrimaryXAxis.Title = "Defects"; this.chartControl.Skins = Skins.Metro; ChartSeries ser = new ChartSeries("Frequency", ChartSeriesType.Line); ser.Style.Border.Width = 3; //ser.Style.Interior = new BrushInfo(Color.FromArgb(0xFF, 0x1B, 0xA1, 0xE2)); ser.Points.Add(0, 0); double val = 0; // To get the Total of all points. for (int j = 0; j < this.chartControl.Series[0].Points.Count; j++) { val += this.chartControl.Series[0].Points[j].YValues[0]; } int i = 0; // To get the cumulative points [ Y Values ] for line series. for (; i < this.chartControl.Series[0].Points.Count; i++) { double val1 = 0; for (int k = 0; k <= i; k++) { val1 += this.chartControl.Series[0].Points[k].YValues[0]; } ser.Points.Add(i + 1, (val1 / val) * 100); // calculates percentage of cumulative values } this.chartControl.PrimaryYAxis.Range.Max = val; this.chartControl.PrimaryYAxis.Title = "Frequency"; ser.Style.Symbol.Shape = ChartSymbolShape.Diamond; ser.Style.Symbol.Color = Color.Yellow; ser.Style.Symbol.Size = new Size(7, 7); this.chartControl.Series.Add(ser); this.chartControl.PrimaryYAxis.Range.Max = val; secYAxis.DrawGrid = false; secYAxis.HidePartialLabels = false; secYAxis.OpposedPosition = true; secYAxis.Title = "Cumulative Frequency"; secYAxis.ForeColor = Color.Black; secYAxis.TitleFont = new Font("Segoe UI", 13F, FontStyle.Regular); secYAxis.ValueType = ChartValueType.Double; secYAxis.Orientation = ChartOrientation.Vertical; secYAxis.TickSize = new Size(5, 1); this.chartControl.Series[1].YAxis = secYAxis; this.chartControl.ChartArea.YAxesLayoutMode = ChartAxesLayoutMode.Stacking; this.chartControl.Axes.Add(secYAxis); // Set ranges secYAxis.Range = new MinMaxInfo(0, 100, 20); this.chartControl.PrimaryXAxis.Range = new MinMaxInfo(0, 7, 1); this.chartControl.PrimaryYAxis.Range.Min = 0; secYAxis.FormatLabel += new ChartFormatAxisLabelEventHandler(secYAxis_FormatLabel); }
/// <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)); }
protected void LoadPieChart() { teacherCountChart.DataSource = _countData; teacherCountChart.DataBind(); // Handle Legend Labels teacherCountChart.Series.Clear(); var nSeries = new ChartSeries(); teacherCountChart.PlotArea.Appearance.FillStyle.MainColor = System.Drawing.ColorTranslator.FromHtml("#FFFFFF"); teacherCountChart.PlotArea.Appearance.FillStyle.FillType = FillType.Solid; teacherCountChart.PlotArea.Appearance.Border.Color = System.Drawing.ColorTranslator.FromHtml("#FFFFFF"); teacherCountChart.PlotArea.XAxis.Appearance.TextAppearance.TextProperties.Font = new System.Drawing.Font("Arial", 8); teacherCountChart.PlotArea.YAxis.Appearance.TextAppearance.TextProperties.Font = new System.Drawing.Font("Arial", 8); nSeries.Appearance.TextAppearance.TextProperties.Color = System.Drawing.Color.Black; nSeries.Appearance.TextAppearance.TextProperties.Font = new System.Drawing.Font("Arial", 8); nSeries.Appearance.LegendDisplayMode = ChartSeriesLegendDisplayMode.ItemLabels; var count = 0; foreach (DataRow dr in _countData.Rows) { var value = DataIntegrity.ConvertToDouble(dr["TeacherCount"]); var myItem = new ChartSeriesItem(value) { Name = dr["Label"].ToString() }; myItem.Appearance.FillStyle.MainColor = System.Drawing.ColorTranslator.FromHtml(StyleController.GetPieChartColor(dr["Label"].ToString(), count++)); myItem.Appearance.FillStyle.FillType = Telerik.Charting.Styles.FillType.Solid; if (value <= 0) myItem.Label.Visible = false; nSeries.Type = ChartSeriesType.Pie; nSeries.AddItem(myItem); } teacherCountChart.Series.Add(nSeries); }
/// <summary> /// Initializes the ChartControl's data and sets the Chart type /// </summary> protected void InitializeChartData() { ChartSeries series1 = new ChartSeries(); series1.Type = ChartSeriesType.StackingColumn; series1.Name = "Banana"; series1.Text = "Banana"; series1.Points.Add(1, 35); series1.Points.Add(2, 30); series1.Points.Add(3, 25); series1.Points.Add(4, 20); series1.Points.Add(5, 15); series1.Points.Add(6, 10); series1.Points.Add(7, 5); series1.Points.Add(8, 15); series1.Points.Add(9, 20); series1.Points.Add(10, 25); series1.Points.Add(11, 30); series1.Points.Add(12, 35); this.chartControl1.Series.Add(series1); /////// ChartSeries series2 = new ChartSeries(); series2.Type = ChartSeriesType.StackingColumn; series2.Name = "Apple"; series2.Text = "Apple"; series2.Points.Add(1, 25); series2.Points.Add(2, 20); series2.Points.Add(3, 18); series2.Points.Add(4, 17); series2.Points.Add(5, 15); series2.Points.Add(6, 10); series2.Points.Add(7, 5); series2.Points.Add(8, 7); series2.Points.Add(9, 10); series2.Points.Add(10, 15); series2.Points.Add(11, 20); series2.Points.Add(12, 25); this.chartControl1.Series.Add(series2); ChartSeries series3 = new ChartSeries(); series3.Type = ChartSeriesType.StackingColumn; series3.Name = "Orange"; series3.Text = "Orange"; series3.Points.Add(1, 40); series3.Points.Add(2, 35); series3.Points.Add(3, 30); series3.Points.Add(4, 25); series3.Points.Add(5, 20); series3.Points.Add(6, 15); series3.Points.Add(7, 10); series3.Points.Add(8, 15); series3.Points.Add(9, 20); series3.Points.Add(10, 25); series3.Points.Add(11, 30); series3.Points.Add(12, 35); this.chartControl1.Series.Add(series3); }
protected override void OnCreate(Bundle bundle) { base.OnCreate(bundle); LicenseManager.Key = License.Key; // Set our view from the "main" layout resource SetContentView(Resource.Layout.Main); // get chart from view chart = FindViewById <FlexChart>(Resource.Id.flexchart); // set title/footer chart.Header = "FlexChart Sales"; chart.Footer = "GrapeCity Xuni"; chart.Legend.BorderWidth = 1; chart.Legend.BorderColor = System.Drawing.Color.Gray.ToArgb(); // set palette chart.SetPalette(Palettes.Modern); // bind X axis to display category names chart.BindingX = "Date"; // create series with binding ChartSeries sales = new ChartSeries(chart, "Sales", "Sales"); // new Series(chart, legend name, binding property) ChartSeries expenses = new ChartSeries(chart, "Expenses", "Expenses"); ChartSeries downloads = new ChartSeries(chart, "Downloads", "Downloads"); downloads.ChartType = ChartType.Line; chart.Series.Add(sales); chart.Series.Add(expenses); chart.Series.Add(downloads); // set data source chart.ItemsSource = SalesData.GetSalesDataList(); // configure default axes chart.AxisX.LabelAngle = 45; chart.AxisX.Format = "d"; chart.AxisY.Format = "c0"; chart.AxisY.Title = "Dollars"; // add second Y axis ChartAxis y2 = new ChartAxis(chart, ChartPositionType.Right); y2.Name = "y2"; y2.Format = "n0"; y2.MajorGridVisible = false; y2.MinorGridVisible = false; y2.LabelsVisible = true; y2.Title = "Downloads"; chart.Axes.Add(y2); downloads.AxisY = "y2"; // customize tooltip chart.Tooltip.Content = new MyTooltip(chart, chart.Context); // customize plot element chart.PlotElementLoading += chart_PlotElementLoading; // configure animation chart.LoadAnimation.AnimationMode = AnimationMode.Point; }
public static SeeSeriesOptions GetSeriesOptions(ChartSeries cSeries) { SeeSeriesOptions sOptions = null; switch (cSeries) { #region VSE case ChartSeries.Program_Checks: sOptions = new SeeSeriesOptions("VSE_Stats", cSeries.ToString(), "Program Checks", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.Phase_Loads: sOptions = new SeeSeriesOptions("VSE_Stats", cSeries.ToString(), "Phase Loads", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.Subchannel_Starts: sOptions = new SeeSeriesOptions("VSE_Stats", cSeries.ToString(), "Subchannel Starts", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.Supervisor_Interrupts: sOptions = new SeeSeriesOptions("VSE_Stats", cSeries.ToString(), "SVC Interrupts", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.IO_Interrupts: sOptions = new SeeSeriesOptions("VSE_Stats", cSeries.ToString(), "IO Interrupts", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.External_Interrupts: sOptions = new SeeSeriesOptions("VSE_Stats", cSeries.ToString(), "EXT Interrupts", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.Nof_Active_Tasks: sOptions = new SeeSeriesOptions("VSE_Summary", cSeries.ToString(), "VSE Tasks", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.Nof_Allocated_Partitions: sOptions = new SeeSeriesOptions("VSE_Summary", cSeries.ToString(), "Allocated Partitions", Gallery.Lines, ChartScales.Count, false, 1); break; #endregion #region CPU case ChartSeries.Dispatch_Cycles: sOptions = new SeeSeriesOptions("CPU_Stats", cSeries.ToString(), "Dispatch Cycles", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.NonVSE_sec: sOptions = new SeeSeriesOptions("CPU_Stats", cSeries.ToString(), "Non-VSE", Gallery.Bar, ChartScales.Percent, true, 1); break; case ChartSeries.Spin_sec: sOptions = new SeeSeriesOptions("CPU_Stats", cSeries.ToString(), "Spinning", Gallery.Bar, ChartScales.Percent, true, 1); break; case ChartSeries.Waiting_sec: sOptions = new SeeSeriesOptions("CPU_Stats", cSeries.ToString(), "Waiting", Gallery.Bar, ChartScales.Percent, true, 1); break; case ChartSeries.Busy_P_sec: sOptions = new SeeSeriesOptions("CPU_Stats", cSeries.ToString(), "Busy-Para", Gallery.Bar, ChartScales.Percent, true, 1); break; case ChartSeries.Busy_NonP_sec: sOptions = new SeeSeriesOptions("CPU_Stats", cSeries.ToString(), "Busy-NonP", Gallery.Bar, ChartScales.Percent, true, 1); break; #endregion #region TCP/IP case ChartSeries.FTP_Clients: sOptions = new SeeSeriesOptions("TCPIP_Clients", cSeries.ToString(), "Int-FTP Clients", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.Telnet_Clients: sOptions = new SeeSeriesOptions("TCPIP_Clients", cSeries.ToString(), "Telnet Clients", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.LPR_Clients: sOptions = new SeeSeriesOptions("TCPIP_Clients", cSeries.ToString(), "LPR Clients", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.HTTP_Clients: sOptions = new SeeSeriesOptions("TCPIP_Clients", cSeries.ToString(), "HTTP Clients", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.FTP_Daemons: sOptions = new SeeSeriesOptions("TCPIP_Daemons", cSeries.ToString(), "FTP Daemons", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.Active_FTP_Daemons: sOptions = new SeeSeriesOptions("TCPIP_Daemons", cSeries.ToString(), "Active FTP Daemons", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.Max_FTP_Daemons: sOptions = new SeeSeriesOptions("TCPIP_Daemons", cSeries.ToString(), "Max FTP Daemons", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.Telnet_Daemons: sOptions = new SeeSeriesOptions("TCPIP_Daemons", cSeries.ToString(), "Telnet Daemons", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.Active_Telnet_Daemons: sOptions = new SeeSeriesOptions("TCPIP_Daemons", cSeries.ToString(), "Active Telnet Daemons", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.Max_Telnet_Daemons: sOptions = new SeeSeriesOptions("TCPIP_Daemons", cSeries.ToString(), "Max Telnet Daemons", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.Active_Telnet_Buffers: sOptions = new SeeSeriesOptions("TCPIP_Daemons", cSeries.ToString(), "Active Telnet Buffers", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.Max_Telnet_Buffers: sOptions = new SeeSeriesOptions("TCPIP_Daemons", cSeries.ToString(), "Max Telnet Buffers", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.LP_Daemons: sOptions = new SeeSeriesOptions("TCPIP_Daemons", cSeries.ToString(), "LP Daemons", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.HTTP_Daemons: sOptions = new SeeSeriesOptions("TCPIP_Daemons", cSeries.ToString(), "HTTP Daemons", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.SMTP_Daemons: sOptions = new SeeSeriesOptions("TCPIP_Daemons", cSeries.ToString(), "SMTP Daemons", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.POP3_Daemons: sOptions = new SeeSeriesOptions("TCPIP_Daemons", cSeries.ToString(), "POP3 Daemons", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.Total_Dispatches: sOptions = new SeeSeriesOptions("TCPIP_Dispatcher", cSeries.ToString(), "Total Dispatches", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.Active_Dispatches: sOptions = new SeeSeriesOptions("TCPIP_Dispatcher", cSeries.ToString(), "Active Dispatches", Gallery.Bar, ChartScales.Count, true, 1); break; case ChartSeries.Fixed_Dispatches: sOptions = new SeeSeriesOptions("TCPIP_Dispatcher", cSeries.ToString(), "Fixed Dispatches", Gallery.Bar, ChartScales.Count, true, 1); break; case ChartSeries.Quick_Dispatches: sOptions = new SeeSeriesOptions("TCPIP_Dispatcher", cSeries.ToString(), "Quick Dispatches", Gallery.Bar, ChartScales.Count, true, 1); break; case ChartSeries.Persistent_Dispatches: sOptions = new SeeSeriesOptions("TCPIP_Dispatcher", cSeries.ToString(), "Persistant Dispatches", Gallery.Bar, ChartScales.Count, true, 1); break; case ChartSeries.Complete_Dispatches: sOptions = new SeeSeriesOptions("TCPIP_Dispatcher", cSeries.ToString(), "Complete Dispatches", Gallery.Bar, ChartScales.Count, true, 1); break; case ChartSeries.Passed_Dispatches: sOptions = new SeeSeriesOptions("TCPIP_Dispatcher", cSeries.ToString(), "Passed Dispatches", Gallery.Bar, ChartScales.Count, true, 1); break; case ChartSeries.Total_Dispatcher_Time: sOptions = new SeeSeriesOptions("TCPIP_Dispatcher", cSeries.ToString(), "Dispatch Time(sec)", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.Dispatcher_Waits: sOptions = new SeeSeriesOptions("TCPIP_Dispatcher", cSeries.ToString(), "Dispatcher Waits", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.Storage_Releases: sOptions = new SeeSeriesOptions("TCPIP_Dispatcher", cSeries.ToString(), "Storage Releases", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.TCP_Checksum_Errors: sOptions = new SeeSeriesOptions("TCPIP_Errors", cSeries.ToString(), "TCP Checksum Errors", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.IP_Checksum_Errors: sOptions = new SeeSeriesOptions("TCPIP_Errors", cSeries.ToString(), "IP Checksum Errors", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.UDP_Checksum_Errors: sOptions = new SeeSeriesOptions("TCPIP_Errors", cSeries.ToString(), "UDP Checksum Errors", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.ICMP_Checksum_Errors: sOptions = new SeeSeriesOptions("TCPIP_Errors", cSeries.ToString(), "ICMP Checksum Errors", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.Datagram_Length_Errors: sOptions = new SeeSeriesOptions("TCPIP_Errors", cSeries.ToString(), "Datagram Length Errors", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.Non_IP: sOptions = new SeeSeriesOptions("TCPIP_Other", cSeries.ToString(), "Non-IP", Gallery.Lines, ChartScales.Bytes, false, 1); break; case ChartSeries.Miss_Routed_IP: sOptions = new SeeSeriesOptions("TCPIP_Other", cSeries.ToString(), "Miss-routed IP", Gallery.Lines, ChartScales.Bytes, false, 1); break; case ChartSeries.Discarded_UDP: sOptions = new SeeSeriesOptions("TCPIP_Other", cSeries.ToString(), "Discarded UDP", Gallery.Lines, ChartScales.Bytes, false, 1); break; case ChartSeries.Unsupported_ICMP: sOptions = new SeeSeriesOptions("TCPIP_Other", cSeries.ToString(), "Unsupported ICMP", Gallery.Lines, ChartScales.Bytes, false, 1); break; case ChartSeries.Unsupported_IGMP: sOptions = new SeeSeriesOptions("TCPIP_Other", cSeries.ToString(), "Unsupported IGMP", Gallery.Lines, ChartScales.Bytes, false, 1); break; case ChartSeries.Unsupported_Protocol: sOptions = new SeeSeriesOptions("TCPIP_Other", cSeries.ToString(), "Unsupported Protocol", Gallery.Lines, ChartScales.Bytes, false, 1); break; case ChartSeries.Connect_Rejections: sOptions = new SeeSeriesOptions("TCPIP_Other", cSeries.ToString(), "Connect Rejections", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.Inbound_TCP_Rejections: sOptions = new SeeSeriesOptions("TCPIP_Other", cSeries.ToString(), "TCP Rejections", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.Nof_TCPIP_Connections: sOptions = new SeeSeriesOptions("TCPIP_Summary", cSeries.ToString(), "Active Connections", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.Nof_TCPIP_PseudoTasks: sOptions = new SeeSeriesOptions("TCPIP_Summary", cSeries.ToString(), "Pseudo Tasks", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.Int_FTP_Files_Sent: sOptions = new SeeSeriesOptions("TCPIP_Traffic", cSeries.ToString(), "Int-FTP Files Sent", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.Int_FTP_Files_Received: sOptions = new SeeSeriesOptions("TCPIP_Traffic", cSeries.ToString(), "Int-FTP Files Rcvd", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.Int_FTP_Bytes_Sent: sOptions = new SeeSeriesOptions("TCPIP_Traffic", cSeries.ToString(), "Int-FTP Sent", Gallery.Lines, ChartScales.Bytes, false, 1); break; case ChartSeries.Int_FTP_Bytes_Received: sOptions = new SeeSeriesOptions("TCPIP_Traffic", cSeries.ToString(), "Int-FTP Rcvd", Gallery.Lines, ChartScales.Bytes, false, 1); break; case ChartSeries.Telnet_Bytes_Sent: sOptions = new SeeSeriesOptions("TCPIP_Traffic", cSeries.ToString(), "Telnet Sent", Gallery.Lines, ChartScales.Bytes, false, 1); break; case ChartSeries.Telnet_Bytes_Received: sOptions = new SeeSeriesOptions("TCPIP_Traffic", cSeries.ToString(), "Telnet Rcvd", Gallery.Lines, ChartScales.Bytes, false, 1); break; case ChartSeries.TCP_Bytes_Sent: sOptions = new SeeSeriesOptions("TCPIP_Traffic", cSeries.ToString(), "TCP Sent", Gallery.Lines, ChartScales.Bytes, false, 1); break; case ChartSeries.TCP_Bytes_Received: sOptions = new SeeSeriesOptions("TCPIP_Traffic", cSeries.ToString(), "TCP Rcvd", Gallery.Lines, ChartScales.Bytes, false, 1); break; case ChartSeries.UDP_Bytes_Sent: sOptions = new SeeSeriesOptions("TCPIP_Traffic", cSeries.ToString(), "UDP Sent", Gallery.Lines, ChartScales.Bytes, false, 1); break; case ChartSeries.UDP_Bytes_Received: sOptions = new SeeSeriesOptions("TCPIP_Traffic", cSeries.ToString(), "UDP Rcvd", Gallery.Lines, ChartScales.Bytes, false, 1); break; case ChartSeries.IP_Bytes_Sent: sOptions = new SeeSeriesOptions("TCPIP_Traffic", cSeries.ToString(), "IP Sent", Gallery.Lines, ChartScales.Bytes, false, 1); break; case ChartSeries.IP_Bytes_Received: sOptions = new SeeSeriesOptions("TCPIP_Traffic", cSeries.ToString(), "IP Rcvd", Gallery.Lines, ChartScales.Bytes, false, 1); break; case ChartSeries.Arps_In: sOptions = new SeeSeriesOptions("TCPIP_Traffic", cSeries.ToString(), "Arps In", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.Arp_Requests_Inbound: sOptions = new SeeSeriesOptions("TCPIP_Traffic", cSeries.ToString(), "Arp Requests In", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.Arp_Requests_Outbound: sOptions = new SeeSeriesOptions("TCPIP_Traffic", cSeries.ToString(), "Arp Requests Out", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.Arp_Replies_Outbound: sOptions = new SeeSeriesOptions("TCPIP_Traffic", cSeries.ToString(), "Arp Replies Out", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.IPNL3172_Blocks_Received: sOptions = new SeeSeriesOptions("TCPIP_Traffic", cSeries.ToString(), "IPNL3172 Blocks Rcvd", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.IPNL3172_Blocks_Transmitted: sOptions = new SeeSeriesOptions("TCPIP_Traffic", cSeries.ToString(), "IPNL3172 Blocks Trans", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.IPNL3172_Datagrams_Inbound: sOptions = new SeeSeriesOptions("TCPIP_Traffic", cSeries.ToString(), "IPNL3172 Datagrams In", Gallery.Lines, ChartScales.Count, false, 1); break; case ChartSeries.IPNL3172_Datagrams_Outbound: sOptions = new SeeSeriesOptions("TCPIP_Traffic", cSeries.ToString(), "IPNL3172 Datagrams Out", Gallery.Lines, ChartScales.Count, false, 1); break; #endregion #region Partitions case ChartSeries.CPU_Time_sec: sOptions = new SeeSeriesOptions("Partition_Job_Step", cSeries.ToString(), "CPU Time", Gallery.Bar, ChartScales.Percent, true, 1); break; case ChartSeries.SIO_Count: sOptions = new SeeSeriesOptions("Partition_Job_Step", cSeries.ToString(), "SIO", Gallery.Bar, ChartScales.Count, true, 1); break; #endregion #region Connections case ChartSeries.Inbound_Data: sOptions = new SeeSeriesOptions("Connection_Stats", cSeries.ToString(), "Dgrams Received", Gallery.Bar, ChartScales.Count, true, 1); break; case ChartSeries.Inbound_Bytes: sOptions = new SeeSeriesOptions("Connection_Stats", cSeries.ToString(), "Received", Gallery.Bar, ChartScales.Bytes, true, 1); break; case ChartSeries.Inbound_Data_Dup: sOptions = new SeeSeriesOptions("Connection_Stats", cSeries.ToString(), "Dgram Duplicates", Gallery.Bar, ChartScales.Count, true, 1); break; case ChartSeries.Inbound_Bytes_Dup: sOptions = new SeeSeriesOptions("Connection_Stats", cSeries.ToString(), "Duplicates", Gallery.Bar, ChartScales.Bytes, true, 1); break; case ChartSeries.Inbound_Eff: sOptions = new SeeSeriesOptions("Connection_Stats", cSeries.ToString(), "Inbound Efficiency", Gallery.Lines, ChartScales.Percent, false, 1); break; case ChartSeries.Outbound_Data: sOptions = new SeeSeriesOptions("Connection_Stats", cSeries.ToString(), "Dgrams Sent", Gallery.Bar, ChartScales.Count, true, 1); break; case ChartSeries.Outbound_Bytes: sOptions = new SeeSeriesOptions("Connection_Stats", cSeries.ToString(), "Sent", Gallery.Bar, ChartScales.Bytes, true, 1); break; case ChartSeries.Outbound_Data_Retr: sOptions = new SeeSeriesOptions("Connection_Stats", cSeries.ToString(), "Dgram Retransmits", Gallery.Bar, ChartScales.Count, true, 1); break; case ChartSeries.Outbound_Bytes_Retr: sOptions = new SeeSeriesOptions("Connection_Stats", cSeries.ToString(), "Retransmits", Gallery.Bar, ChartScales.Bytes, true, 1); break; case ChartSeries.Outbound_Eff: sOptions = new SeeSeriesOptions("Connection_Stats", cSeries.ToString(), "Outbound Efficiency", Gallery.Lines, ChartScales.Percent, false, 1); break; case ChartSeries.SWS_Count: sOptions = new SeeSeriesOptions("Connection_Stats", cSeries.ToString(), "SWS", Gallery.Bar, ChartScales.Count, true, 1); break; case ChartSeries.Recvs_Issued: sOptions = new SeeSeriesOptions("Connection_Stats", cSeries.ToString(), "RECVs Issued", Gallery.Bar, ChartScales.Count, true, 1); break; case ChartSeries.Sends_Issued: sOptions = new SeeSeriesOptions("Connection_Stats", cSeries.ToString(), "SENDs Issued", Gallery.Bar, ChartScales.Count, true, 1); break; case ChartSeries.Retransmits: sOptions = new SeeSeriesOptions("Connection_Stats", cSeries.ToString(), "Retransmits Issued", Gallery.Bar, ChartScales.Count, true, 1); break; #endregion #region Foreign IPs case ChartSeries.TCP_Inbound_Bytes: sOptions = new SeeSeriesOptions("ForeignIP_Stats", cSeries.ToString(), "TCP Received", Gallery.Bar, ChartScales.Bytes, true, 1); break; case ChartSeries.IP_Inbound_Bytes: sOptions = new SeeSeriesOptions("ForeignIP_Stats", cSeries.ToString(), "IP Received", Gallery.Bar, ChartScales.Bytes, true, 1); break; case ChartSeries.UDP_Inbound_Bytes: sOptions = new SeeSeriesOptions("ForeignIP_Stats", cSeries.ToString(), "UDP Received", Gallery.Bar, ChartScales.Bytes, true, 1); break; case ChartSeries.ICMP_Inbound_Bytes: sOptions = new SeeSeriesOptions("ForeignIP_Stats", cSeries.ToString(), "ICMP Received", Gallery.Bar, ChartScales.Bytes, true, 1); break; case ChartSeries.ARP_Inbound_Bytes: sOptions = new SeeSeriesOptions("ForeignIP_Stats", cSeries.ToString(), "ARP Received", Gallery.Bar, ChartScales.Bytes, true, 1); break; case ChartSeries.Misdirected_IP_Bytes: sOptions = new SeeSeriesOptions("ForeignIP_Stats", cSeries.ToString(), "Misdirected IP", Gallery.Bar, ChartScales.Bytes, true, 1); break; case ChartSeries.NonIP_Bytes: sOptions = new SeeSeriesOptions("ForeignIP_Stats", cSeries.ToString(), "Non-IP Received", Gallery.Bar, ChartScales.Bytes, true, 1); break; case ChartSeries.TCP_Outbound_Bytes: sOptions = new SeeSeriesOptions("ForeignIP_Stats", cSeries.ToString(), "TCP Sent", Gallery.Bar, ChartScales.Bytes, true, 1); break; case ChartSeries.IP_Outbound_Bytes: sOptions = new SeeSeriesOptions("ForeignIP_Stats", cSeries.ToString(), "IP Sent", Gallery.Bar, ChartScales.Bytes, true, 1); break; case ChartSeries.UDP_Outbound_Bytes: sOptions = new SeeSeriesOptions("ForeignIP_Stats", cSeries.ToString(), "UDP Sent", Gallery.Bar, ChartScales.Bytes, true, 1); break; case ChartSeries.ICMP_Outbound_Bytes: sOptions = new SeeSeriesOptions("ForeignIP_Stats", cSeries.ToString(), "ICMP Sent", Gallery.Bar, ChartScales.Bytes, true, 1); break; case ChartSeries.ARP_Outbound_Bytes: sOptions = new SeeSeriesOptions("ForeignIP_Stats", cSeries.ToString(), "ARP Sent", Gallery.Bar, ChartScales.Bytes, true, 1); break; case ChartSeries.TCP_Inbound_Datagrams: sOptions = new SeeSeriesOptions("ForeignIP_Stats", cSeries.ToString(), "TCP Received", Gallery.Bar, ChartScales.Count, true, 1); break; case ChartSeries.IP_Inbound_Datagrams: sOptions = new SeeSeriesOptions("ForeignIP_Stats", cSeries.ToString(), "IP Received", Gallery.Bar, ChartScales.Count, true, 1); break; case ChartSeries.UDP_Inbound_Datagrams: sOptions = new SeeSeriesOptions("ForeignIP_Stats", cSeries.ToString(), "UDP Received", Gallery.Bar, ChartScales.Count, true, 1); break; case ChartSeries.ICMP_Inbound_Datagrams: sOptions = new SeeSeriesOptions("ForeignIP_Stats", cSeries.ToString(), "ICMP Received", Gallery.Bar, ChartScales.Count, true, 1); break; case ChartSeries.ARP_Inbound_Datagrams: sOptions = new SeeSeriesOptions("ForeignIP_Stats", cSeries.ToString(), "ARP Received", Gallery.Bar, ChartScales.Count, true, 1); break; case ChartSeries.Misdirected_IP_Datagrams: sOptions = new SeeSeriesOptions("ForeignIP_Stats", cSeries.ToString(), "Misdirected IP", Gallery.Bar, ChartScales.Count, true, 1); break; case ChartSeries.NonIP_Datagrams: sOptions = new SeeSeriesOptions("ForeignIP_Stats", cSeries.ToString(), "Non-IP Received", Gallery.Bar, ChartScales.Count, true, 1); break; case ChartSeries.TCP_Outbound_Datagrams: sOptions = new SeeSeriesOptions("ForeignIP_Stats", cSeries.ToString(), "TCP Sent", Gallery.Bar, ChartScales.Count, true, 1); break; case ChartSeries.IP_Outbound_Datagrams: sOptions = new SeeSeriesOptions("ForeignIP_Stats", cSeries.ToString(), "IP Sent", Gallery.Bar, ChartScales.Count, true, 1); break; case ChartSeries.UDP_Outbound_Datagrams: sOptions = new SeeSeriesOptions("ForeignIP_Stats", cSeries.ToString(), "UDP Sent", Gallery.Bar, ChartScales.Count, true, 1); break; case ChartSeries.ICMP_Outbound_Datagrams: sOptions = new SeeSeriesOptions("ForeignIP_Stats", cSeries.ToString(), "ICMP Sent", Gallery.Bar, ChartScales.Count, true, 1); break; case ChartSeries.ARP_Outbound_Datagrams: sOptions = new SeeSeriesOptions("ForeignIP_Stats", cSeries.ToString(), "ARP Sent", Gallery.Bar, ChartScales.Count, true, 1); break; #endregion default: System.Diagnostics.Debug.WriteLine("Invalid ChartSeries in SeeChartParams.GetSeriesOptions()..."); break; } return(sOptions); }
public void PopulateCommissionBonusesChartXml() { // Establish our chart variables var xAxisLabels = new List <string>(); var seriesCollection = new List <ChartSeries>(); // Group our data to ensure that we show accurate data. var groupedData = CommissionBonusesDetails .GroupBy(c => new { c.BonusDescription, c.AcceptedDate }, (key, group) => new { key.BonusDescription, key.AcceptedDate, BonusAmount = group.Sum(a => a.BonusAmount) }); // Loop through each row and define our variables from the data foreach (var detail in groupedData) { // X-axis var monthDescription = detail.AcceptedDate.ToString("MMMM yyyy"); if (!xAxisLabels.Contains(monthDescription)) { xAxisLabels.Add(monthDescription); } // ConnectionStrings series var seriesName = detail.BonusDescription; var existingSeries = seriesCollection.Where(c => c.SeriesName == seriesName).Select(c => c).FirstOrDefault(); if (existingSeries == null) { var newSeries = new ChartSeries(); newSeries.SeriesName = seriesName; newSeries.Values.Add(detail.BonusAmount); seriesCollection.Add(newSeries); } else { existingSeries.Values.Add(detail.BonusAmount); } } // Compile the individual sections. Let's start with the categories. var categoriesXml = string.Empty; foreach (var label in xAxisLabels) { categoriesXml += string.Format(@"<category label='{0}' />", label); } categoriesXml = "<categories>" + categoriesXml + "</categories>"; // Next, compile the datasets var datasetXml = string.Empty; foreach (var series in seriesCollection) { // Dataset Values var datasetValuesJson = string.Empty; foreach (var value in series.Values) { datasetValuesJson += string.Format("<set value='{0}' />", value); } datasetXml += string.Format("<dataset seriesName='{0}'>", series.SeriesName) + datasetValuesJson + "</dataset>"; } // Compile the Json var json = new StringBuilder(); json.AppendFormat("<chart caption='' xAxisName='' yAxisName='Payouts' bgcolor='FFFFFF, FFFFFF' showBorder='0' showValues='0' labelDisplay='auto' showvalues='0' showSum='1' decimals='2' formatNumberScale='0' numberprefix='$'>{0}{1}</chart>", categoriesXml, datasetXml); // Set the Json to the corresponding property CommissionBonusesChartXml = json.ToString(); }
public void InitializeChartData() { ChartSeries series = new ChartSeries(); series.Type = ChartSeriesType.Spline; series.Name = "Series 0"; series.Text = "News and Media"; series.Points.Add(new DateTime(2007, 1, 1), 13); series.Points.Add(new DateTime(2007, 2, 1), 8); series.Points.Add(new DateTime(2007, 3, 1), 21); series.Points.Add(new DateTime(2007, 4, 1), 13); series.Points.Add(new DateTime(2007, 5, 1), 15); series.Style.Images = new ChartImageCollection(this.imageListAdv1.Images); //series.Style.DisplayShadow = true; series.Style.ImageIndex = 0; this.chartControl1.Series.Add(series); ChartSeries series1 = new ChartSeries(); series1.Type = ChartSeriesType.Spline; series1.Name = "Series 1"; series1.Text = "Finance Sector"; series1.Points.Add(new DateTime(2007, 1, 1), 18); series1.Points.Add(new DateTime(2007, 2, 1), 5); series1.Points.Add(new DateTime(2007, 3, 1), 26); series1.Points.Add(new DateTime(2007, 4, 1), 32); series1.Points.Add(new DateTime(2007, 5, 1), 20); series1.Style.Images = new ChartImageCollection(this.imageListAdv1.Images); //series1.Style.DisplayShadow = true; series1.Style.ImageIndex = 1; this.chartControl1.Series.Add(series1); ChartSeries series2 = new ChartSeries(); series2.Type = ChartSeriesType.Spline; series2.Name = "Series 2"; series2.Text = "Imports And Exports"; series2.Points.Add(new DateTime(2007, 1, 1), 0); series2.Points.Add(new DateTime(2007, 2, 1), 12); series2.Points.Add(new DateTime(2007, 3, 1), 20); series2.Points.Add(new DateTime(2007, 4, 1), 16); series2.Points.Add(new DateTime(2007, 5, 1), 35); series2.Style.Images = new ChartImageCollection(this.imageListAdv1.Images); //series2.Style.DisplayShadow = true; series2.Style.ImageIndex = 2; this.chartControl1.Series.Add(series2); this.chartControl1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right))); this.chartControl1.Series[0].Style.Interior = new Syncfusion.Drawing.BrushInfo(Color.FromArgb(246, 100, 15)); this.chartControl1.Series[0].Style.Border.Color = Color.Transparent; this.chartControl1.Series[0].Style.Border.Width = 2; this.chartControl1.Series[1].Style.Interior = new Syncfusion.Drawing.BrushInfo(Color.FromArgb(36, 119, 51)); this.chartControl1.Series[1].Style.Border.Color = Color.Transparent; this.chartControl1.Series[1].Style.Border.Width = 2; this.chartControl1.Series[2].Style.Interior = new Syncfusion.Drawing.BrushInfo(Color.FromArgb(9, 116, 210)); this.chartControl1.Series[2].Style.Border.Color = Color.Transparent; this.chartControl1.Series[2].Style.Border.Width = 2; this.chartControl1.Series[0].PrepareStyle += new ChartPrepareStyleInfoHandler(ChartControlSeries_PrepareStyle); this.chartControl1.Series[1].PrepareStyle += new ChartPrepareStyleInfoHandler(ChartControlSeries_PrepareStyle); this.chartControl1.Series[2].PrepareStyle += new ChartPrepareStyleInfoHandler(ChartControlSeries_PrepareStyle); this.chartControl1.PrimaryXAxis.InterlacedGridInterior = new Syncfusion.Drawing.BrushInfo(System.Drawing.Color.WhiteSmoke); this.chartControl1.PrimaryYAxis.InterlacedGridInterior = new Syncfusion.Drawing.BrushInfo(System.Drawing.Color.WhiteSmoke); }
/// <summary> /// Handler for the PrepareStyle event of ChartSeries. /// </summary> /// <param name="sender">The ChartSeries object that raises this event.</param> /// <param name="args">The event data. Can be modified to change series appearance.</param> void series1_PrepareStyle(object sender, ChartPrepareStyleInfoEventArgs args) { ChartSeries series = sender as ChartSeries; series.Style.Border.Color = Color.Transparent; series.ConfigItems.PieItem.PieType = ChartPieType.None; if (series != null) { color1 = new Color[] { Color.FromArgb(0xFF, 0x1B, 0xA1, 0xE2) }; color2 = new Color[] { Color.FromArgb(0xFF, 0xA0, 0x50, 0x00) }; color3 = new Color[] { Color.FromArgb(0xFF, 0x33, 0x99, 0x33) }; color4 = new Color[] { Color.FromArgb(0xFF, 0xA2, 0xC1, 0x39) }; color5 = new Color[] { Color.FromArgb(0xFF, 0xD8, 0x00, 0x73) }; color6 = new Color[] { Color.FromArgb(0xFF, 0xF0, 0x96, 0x09) }; color7 = new Color[] { Color.FromArgb(0xFF, 0xE6, 0x71, 0xB8) }; color8 = new Color[] { Color.FromArgb(0xFF, 0xA2, 0x00, 0xFF) }; if (args.Index == 0) { args.Style.Interior = new BrushInfo(GradientStyle.None, color1); this.chartControl1.Legend.Items[0].Interior = new BrushInfo(GradientStyle.None, color1); if (chartControl1.Series[0].Type != ChartSeriesType.Funnel && chartControl1.Series[0].Type != ChartSeriesType.Pyramid) { args.Style.TextColor = Color.White; } } else if (args.Index == 1) { args.Style.Interior = new BrushInfo(GradientStyle.None, color2); this.chartControl1.Legend.Items[1].Interior = new BrushInfo(GradientStyle.None, color2); if (chartControl1.Series[0].Type != ChartSeriesType.Funnel && chartControl1.Series[0].Type != ChartSeriesType.Pyramid) { args.Style.TextColor = Color.White; } } else if (args.Index == 2) { args.Style.Interior = new BrushInfo(GradientStyle.None, color6); this.chartControl1.Legend.Items[2].Interior = new BrushInfo(GradientStyle.None, color6); if (chartControl1.Series[0].Type != ChartSeriesType.Funnel && chartControl1.Series[0].Type != ChartSeriesType.Pyramid) { args.Style.TextColor = Color.White; } } else if (args.Index == 3) { args.Style.Interior = new BrushInfo(GradientStyle.None, color4); this.chartControl1.Legend.Items[3].Interior = new BrushInfo(GradientStyle.None, color4); if (chartControl1.Series[0].Type != ChartSeriesType.Funnel && chartControl1.Series[0].Type != ChartSeriesType.Pyramid) { args.Style.TextColor = Color.White; } } else if (args.Index == 4) { args.Style.Interior = new BrushInfo(GradientStyle.None, color5); this.chartControl1.Legend.Items[4].Interior = new BrushInfo(GradientStyle.None, color5); if (chartControl1.Series[0].Type != ChartSeriesType.Funnel && chartControl1.Series[0].Type != ChartSeriesType.Pyramid) { args.Style.TextColor = Color.White; } } else if (args.Index == 5) { args.Style.Interior = new BrushInfo(GradientStyle.None, color3); this.chartControl1.Legend.Items[5].Interior = new BrushInfo(GradientStyle.None, color3); if (chartControl1.Series[0].Type != ChartSeriesType.Funnel && chartControl1.Series[0].Type != ChartSeriesType.Pyramid) { args.Style.TextColor = Color.White; } } else if (args.Index == 6) { args.Style.Interior = new BrushInfo(GradientStyle.None, color7); this.chartControl1.Legend.Items[6].Interior = new BrushInfo(GradientStyle.None, color7); if (chartControl1.Series[0].Type != ChartSeriesType.Funnel && chartControl1.Series[0].Type != ChartSeriesType.Pyramid) { args.Style.TextColor = Color.White; } } else { args.Style.Interior = new BrushInfo(GradientStyle.None, color1); } } }
private static void RunOrDispatchAnimations(ChartSeries series) { bool started = TryRunSeriesAnimation(series); if (!started) { DispatchRunSeriesAnimations(series); } }
protected void BuildSeries(string title) { ChartSeries series = new ChartSeries(title); this.c.Chart.Series.Add(series); }
private FinancialTechnicalIndicator Addindicator(string value, int rowIndex) { FinancialTechnicalIndicator indic; switch (value) { case "AccumulationDistributionIndicator": indic = new AccumulationDistributionIndicator(); break; case "AverageTrueRangeIndicator": indic = new AverageTrueRangeIndicator(); break; case "BollingerBandIndicator": indic = new BollingerBandIndicator(); break; case "ExponentialAverageIndicator": indic = new ExponentialAverageIndicator(); break; case "MACDTechnicalIndicator": indic = new MACDTechnicalIndicator(); break; case "MomentumTechnicalIndicator": indic = new MomentumTechnicalIndicator(); break; case "RSITechnicalIndicator": indic = new RSITechnicalIndicator(); break; case "SimpleAverageIndicator": indic = new SimpleAverageIndicator(); break; case "StochasticTechnicalIndicator": indic = new StochasticTechnicalIndicator(); break; case "TriangularAverageIndicator": indic = new TriangularAverageIndicator(); break; default: return(null); } indic.SeriesName = rowIndex == 0 ? this.ChartArea.VisibleSeries[1].Name : this.ChartArea.VisibleSeries[0].Name; ChartSeries Series = this.ChartArea.VisibleSeries[indic.SeriesName] as ChartSeries; indic.XBindingPath = "TimeStamp"; indic.High = "High"; indic.Low = "Low"; indic.Open = "Open"; indic.Close = "Last"; indic.Volume = "Volume"; Binding binding = new Binding(); binding.Path = new PropertyPath("ItemsSource"); binding.Source = Series; binding.Mode = BindingMode.TwoWay; indic.SetBinding(FinancialTechnicalIndicator.ItemsSourceProperty, binding); if (rowIndex == 0) { var supportAxes = this.ChartArea.VisibleSeries[1] as ISupportAxes; if (supportAxes != null) { indic.YAxis = supportAxes.ActualYAxis as RangeAxisBase; } UI.Xaml.Charts.SfChart.SetRow(indic.YAxis, 1); } else { indic.YAxis = this.ChartArea.SecondaryAxis; UI.Xaml.Charts.SfChart.SetRow(indic.YAxis, 0); } return(indic); }
protected void InitializeChartData() { ChartSeries Completion = new ChartSeries("Completion", ChartSeriesType.Gantt); DateTime dt = new DateTime(2009, 1, 1); Completion.Points.Add(0, dt, dt.AddDays(2)); Completion.Points.Add(1, dt.AddDays(1), dt.AddDays(2)); Completion.Points.Add(2, dt.AddDays(3), dt.AddDays(5)); Completion.Points.Add(3, dt.AddDays(6), dt.AddDays(9)); Completion.Points.Add(4, dt.AddDays(10), dt.AddDays(13)); Completion.Points.Add(5, dt.AddDays(15), dt.AddDays(18)); Completion.Style.PointWidth = 0.5f; this.chartControl1.Series.Add(Completion); Completion.PointsToolTipFormat = "{1}{2}"; ChartSeries Task = new ChartSeries("Task", ChartSeriesType.Gantt); Task.Points.Add(0, dt, dt.AddDays(2)); Task.Points.Add(1, dt.AddDays(1), dt.AddDays(3)); Task.Points.Add(2, dt.AddDays(3), dt.AddDays(6)); Task.Points.Add(3, dt.AddDays(6), dt.AddDays(10)); Task.Points.Add(4, dt.AddDays(10), dt.AddDays(15)); Task.Points.Add(5, dt.AddDays(15), dt.AddDays(20)); // Make a note of the last day: DateTime lastDay = DateTime.FromOADate(Task.Points[Task.Points.Count - 1].YValues[1]); Task.Style.PointWidth = 0.75f; this.chartControl1.Series.Add(Task); Task.PointsToolTipFormat = "{1}{2}"; this.chartControl1.ShowToolTips = true; this.chartControl1.CalcRegions = true; this.chartControl1.PrimaryXAxis.RangeType = ChartAxisRangeType.Set; this.chartControl1.PrimaryXAxis.DateTimeRange = new ChartDateTimeRange(dt, lastDay.AddDays(2), 1, ChartDateTimeIntervalType.Days); // Displays custom into on Points for (int i = 0; i < this.chartControl1.Series[0].Points.Count; i++) { if (this.chartControl1.Series[1].Points[i].YValues[0] != this.chartControl1.Series[1].Points[i].YValues[1]) { ChartCustomPoint ccp = new ChartCustomPoint(); ChartPoint pt = this.chartControl1.Series[1].Points[i]; ccp.XValue = pt.X; ccp.YValue = pt.YValues[0] + 1; ccp.CustomType = ChartCustomPointType.ChartCoordinates; ccp.Text = String.Format("{0} days", pt.YValues[1] - pt.YValues[0]); ccp.Color = Color.White; ccp.Font.Facename = "Segoe UI"; this.chartControl1.CustomPoints.Add(ccp); } } // To indicate weekends Color[] stripLineColor = new Color[] { Color.LightGray, Color.WhiteSmoke, Color.LightGray }; //Chart Strip Lines ChartStripLine stripLine1 = new ChartStripLine(); stripLine1.Enabled = true; stripLine1.Vertical = false; stripLine1.StartDate = dt.AddDays(2); //// We know that Jan 3rd is a Saturday. stripLine1.EndDate = lastDay; stripLine1.Width = 2; // Repetition frequency: every 7 days stripLine1.PeriodDate = new TimeSpan(7, 0, 0, 0); stripLine1.Text = string.Empty; stripLine1.Interior = new BrushInfo(GradientStyle.ForwardDiagonal, stripLineColor); this.chartControl1.PrimaryXAxis.StripLines.Add(stripLine1); this.chartControl1.Series[0].PrepareStyle += new ChartPrepareStyleInfoHandler(Form1_PrepareStyle); this.chartControl1.Series[1].PrepareStyle += new ChartPrepareStyleInfoHandler(Form1_PrepareStyle); }
protected override void OnCreate(Bundle savedInstanceState) { base.OnCreate(savedInstanceState); SetContentView(Resource.Layout.activity_styling_series); var toolbar = FindViewById <Toolbar>(Resource.Id.toolbar); SetSupportActionBar(toolbar); SupportActionBar.Title = GetString(Resource.String.stylingSeries); SupportActionBar.SetDisplayHomeAsUpEnabled(true); SupportActionBar.SetHomeButtonEnabled(true); // initializing widget mChart = this.FindViewById <FlexChart>(Resource.Id.flexchart); mChart.BindingX = "Name"; // initialize series elements and set the binding to variables of // ChartPoint ChartSeries seriesSales = new ChartSeries(); seriesSales.Chart = mChart; seriesSales.SeriesName = "Sales"; seriesSales.Binding = "Sales"; ChartSeries seriesExpenses = new ChartSeries(); seriesExpenses.Chart = mChart; seriesExpenses.SeriesName = "Expenses"; seriesExpenses.Binding = "Expenses"; ChartSeries seriesDownloads = new ChartSeries(); seriesDownloads.Chart = mChart; seriesDownloads.SeriesName = "Downloads"; seriesDownloads.Binding = "Downloads"; // style series sales seriesSales.Style = new ChartStyle() { Fill = Android.Graphics.Color.ParseColor("#009400"), Stroke = Android.Graphics.Color.Green, StrokeThickness = 3 }; // style series expenses seriesExpenses.Style = new ChartStyle() { Fill = Android.Graphics.Color.ParseColor("#C40000"), Stroke = Android.Graphics.Color.Red, StrokeThickness = 3 }; // style series downloads seriesDownloads.ChartType = ChartType.LineSymbols; seriesDownloads.Style = new ChartStyle() { Stroke = Android.Graphics.Color.Blue, StrokeThickness = 10 }; seriesDownloads.SymbolStyle = new ChartStyle() { Fill = Android.Graphics.Color.Yellow, Stroke = Android.Graphics.Color.Cyan, StrokeThickness = 3 }; // add series to list mChart.Series.Add(seriesSales); mChart.Series.Add(seriesExpenses); mChart.Series.Add(seriesDownloads); // setting the source of data/items in FlexChart mChart.ItemsSource = (ChartPoint.GetList()); }
protected void InitializeChartData() { //Scatter Line ChartSeries series1 = new ChartSeries(" Min.Temperature "); series1.Type = ChartSeriesType.Scatter; DateTime start = DateTime.Now; series1.Points.Add(start.AddMonths(0), -5); series1.Points.Add(start.AddMonths(1), 0); series1.Points.Add(start.AddMonths(2), 3); series1.Points.Add(start.AddMonths(3), 6); series1.Points.Add(start.AddMonths(4), 15); series1.Points.Add(start.AddMonths(5), 22); series1.Points.Add(start.AddMonths(6), 30); series1.Points.Add(start.AddMonths(7), 28); series1.Points.Add(start.AddMonths(8), 21); series1.Points.Add(start.AddMonths(9), 13); series1.Points.Add(start.AddMonths(10), 6); series1.Points.Add(start.AddMonths(11), 1); ChartSeries series2 = new ChartSeries(" Avg.Temperature "); series2.Text = series2.Name; series2.Type = ChartSeriesType.Scatter; series2.Points.Add(start.AddMonths(0), 2); series2.Points.Add(start.AddMonths(1), 4); series2.Points.Add(start.AddMonths(2), 5); series2.Points.Add(start.AddMonths(3), 11); series2.Points.Add(start.AddMonths(4), 19); series2.Points.Add(start.AddMonths(5), 26); series2.Points.Add(start.AddMonths(6), 35); series2.Points.Add(start.AddMonths(7), 32); series2.Points.Add(start.AddMonths(8), 25); series2.Points.Add(start.AddMonths(9), 16); series2.Points.Add(start.AddMonths(10), 9); series2.Points.Add(start.AddMonths(11), 2); ChartSeries series3 = new ChartSeries(" Avg. Rainfall"); series3.Text = series3.Name; series3.Type = ChartSeriesType.Scatter; series3.Points.Add(start.AddMonths(0), 62); series3.Points.Add(start.AddMonths(1), 73); series3.Points.Add(start.AddMonths(2), 95); series3.Points.Add(start.AddMonths(3), 107); series3.Points.Add(start.AddMonths(4), 85); series3.Points.Add(start.AddMonths(5), 60); series3.Points.Add(start.AddMonths(6), 73); series3.Points.Add(start.AddMonths(7), 105); series3.Points.Add(start.AddMonths(9), 83); series3.Points.Add(start.AddMonths(10), 84); series3.Points.Add(start.AddMonths(11), 96); this.chartControl1.Series.Add(series1); this.chartControl1.Series.Add(series2); this.chartControl1.Series.Add(series3); this.chartControl1.Series[0].ScatterConnectType = ScatterConnectType.Line; this.chartControl1.Series[1].ScatterConnectType = ScatterConnectType.Line; this.chartControl1.Series[2].ScatterConnectType = ScatterConnectType.Line; this.chartControl1.PrimaryYAxis.Range = new MinMaxInfo(-10, 45, 5); this.chartControl1.PrimaryYAxis.HidePartialLabels = true; this.chartControl1.PrimaryXAxis.HidePartialLabels = true; this.chartControl1.PrimaryXAxis.ValueType = ChartValueType.DateTime; this.chartControl1.PrimaryXAxis.DateTimeFormat = "MMM"; this.chartControl1.PrimaryXAxis.DateTimeRange = new ChartDateTimeRange(start.AddMonths(-1), start.AddMonths(12), 2, ChartDateTimeIntervalType.Months); this.chartControl1.PrimaryYAxis.ValueType = ChartValueType.Double; this.chartControl1.Indexed = false; secYAxis.DrawGrid = false; secYAxis.Range = new MinMaxInfo(0, 120, 12); secYAxis.HidePartialLabels = true; secYAxis.OpposedPosition = true; secYAxis.LabelIntersectAction = ChartLabelIntersectAction.Rotate; secYAxis.LineType.ForeColor = Color.FromArgb(213, 219, 204); secYAxis.ValueType = ChartValueType.Double; secYAxis.Orientation = ChartOrientation.Vertical; secYAxis.GridLineType.BackColor = Color.FromArgb(250, 209, 150, 150); secYAxis.GridLineType.ForeColor = Color.FromArgb(250, 230, 193, 193); secYAxis.GridLineType.PenType = System.Drawing.Drawing2D.PenType.LinearGradient; secYAxis.GridLineType.Width = 0; secYAxis.LineType.ForeColor = Color.FromArgb(213, 219, 204); secYAxis.Font = new Font("Segoe UI", 10.25f); this.chartControl1.Axes.Add(secYAxis); this.chartControl1.Series[2].YAxis = secYAxis; this.chartControl1.ChartArea.YAxesLayoutMode = ChartAxesLayoutMode.Stacking; secYAxis.Title = "Rainfall (Millimeter)"; secYAxis.TitleFont = new Font("Segoe UI", 14.25f); this.comboBox1.Enabled = false; }
private void ResetPoints(ChartSeries chartSeries, System.Collections.Specialized.NotifyCollectionChangedEventArgs e) { this.Chart.Series[chartSeries.Name].Points.Clear(); AddPoints(chartSeries); }
public void AddTrendLine(Point start, Point end) { ChartSeries newSeries = this.CreateNewSeries(start, end); this.UpdateTrendLineColor(newSeries); }
private void AddChartSeries(ChartSeries chartSeries) { AddSeries(chartSeries.Name); AddPoints(chartSeries); chartSeries.Points.CollectionChanged += new System.Collections.Specialized.NotifyCollectionChangedEventHandler(Points_CollectionChanged); }
protected void InitializeData() { this.comboBox1.SelectedIndex = 1; this.comboBox2.SelectedIndex = 1; this.comboBox3.SelectedIndex = 1; this.chartControl1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right))); #if NETCORE this.chartControl1.ChartArea.Watermark.Image = System.Drawing.Image.FromFile(@"..\..\..\..\..\..\..\..\Common\images\Chart\carsales.png"); #else this.chartControl1.ChartArea.Watermark.Image = System.Drawing.Image.FromFile(@"..\..\..\..\..\..\..\Common\images\Chart\carsales.png"); #endif this.panel1.Dock = System.Windows.Forms.DockStyle.None; this.chartControl1.Depth = 75; this.chartControl1.Series.Clear(); this.chartControl1.BorderAppearance.SkinStyle = Syncfusion.Windows.Forms.Chart.ChartBorderSkinStyle.None; ChartSeries series1 = new ChartSeries(); series1.Name = "Model1_Blue"; series1.Text = "Honda"; series1.Points.Add(1996, 40); series1.Points.Add(1998, 60); series1.Points.Add(2000, 75); series1.Points.Add(2002, 60); series1.Points.Add(2004, 55); series1.Points.Add(2006, 85); series1.Type = ChartSeriesType.Spline; series1.Style.Border.Width = 3; series1.Style.ImageIndex = 0; series1.Style.Images = new ChartImageCollection(this.imageListAdv1.Images); series1.Style.Border.Color = Color.FromArgb(49, 73, 102); chartControl1.Series.Add(series1); ChartSeries series2 = new ChartSeries(); series2.Name = "Model1_Green"; series2.Text = "Toyato"; series2.Points.Add(1996, 35); series2.Points.Add(1998, 70); series2.Points.Add(2000, 45); series2.Points.Add(2002, 20); series2.Points.Add(2004, 35); series2.Points.Add(2006, 65); series2.Type = ChartSeriesType.Spline; series2.Style.Border.Width = 3; series2.Style.Images = new ChartImageCollection(this.imageListAdv1.Images); series2.Style.ImageIndex = 1; series2.Style.Border.Color = Color.FromArgb(151, 188, 75); chartControl1.Series.Add(series2); ChartSeries series3 = new ChartSeries(); series3.Name = "Model2_Blue"; series3.Text = "Benz"; series3.Points.Add(1996, 60); series3.Points.Add(1998, 35); series3.Points.Add(2000, 55); series3.Points.Add(2002, 30); series3.Points.Add(2004, 65); series3.Points.Add(2006, 45); series3.Type = ChartSeriesType.Spline; series3.Style.Border.Width = 3; series3.Style.Images = new ChartImageCollection(this.imageListAdv1.Images); series3.Style.ImageIndex = 2; series3.Style.Border.Color = Color.FromArgb(110, 68, 67); chartControl1.Series.Add(series3); ChartSeries series4 = new ChartSeries(); series4.Name = "Model2_Green"; series4.Text = "Audi"; series4.Points.Add(1996, 45); series4.Points.Add(1998, 50); series4.Points.Add(2000, 35); series4.Points.Add(2002, 60); series4.Points.Add(2004, 35); series4.Points.Add(2006, 55); series4.Type = ChartSeriesType.Spline; series4.Style.Border.Width = 3; series4.Style.Images = new ChartImageCollection(this.imageListAdv1.Images); series4.Style.ImageIndex = 3; series4.Style.Border.Color = Color.FromArgb(169, 119, 118); chartControl1.Series.Add(series4); }
private void InitializeChartData() { DateTime d = DateTime.Now; ChartSeries series1 = new ChartSeries("Stock", ChartSeriesType.Line); series1.Text = series1.Name; foreach (string symbol in Enum.GetNames(typeof(Syncfusion.Windows.Forms.Chart.ChartSymbolShape))) { this.cmbSymbolStyle.Items.Add(symbol); } this.cmbSymbolStyle.SelectedIndex = 1; this.comboBox_LineStyle.SelectedIndex = 0; this.colorPickerButton3.SelectedColor = Color.Yellow; this.checkBox1.Checked = true; this.chartControl1.Series.Add(series1); for (int i = 0; i < 100; i++) { if (i <= 10) { series1.Points.Add(d.AddDays(i), rand.Next(25, 38)); } else if (i > 10 && i <= 12) { series1.Points.Add(d.AddDays(i), rand.Next(38, 45)); } else if (i > 12 && i <= 19) { series1.Points.Add(d.AddDays(i), rand.Next(42, 50)); } else if (i > 19 && i <= 23) { series1.Points.Add(d.AddDays(i), rand.Next(50, 60)); } else if (i > 23 && i <= 29) { series1.Points.Add(d.AddDays(i), rand.Next(58, 72)); } else if (i > 29 && i <= 32) { series1.Points.Add(d.AddDays(i), rand.Next(62, 78)); } else if (i > 32 && i <= 49) { series1.Points.Add(d.AddDays(i), rand.Next(68, 85)); } else if (i > 49 && i <= 51) { series1.Points.Add(d.AddDays(i), rand.Next(58, 90)); } else if (i > 51 && i <= 61) { series1.Points.Add(d.AddDays(i), rand.Next(86, 108)); } else if (i > 61 && i <= 71) { series1.Points.Add(d.AddDays(i), rand.Next(100, 118)); } else if (i > 71 && i <= 81) { series1.Points.Add(d.AddDays(i), rand.Next(110, 122)); } else if (i > 81 && i <= 91) { series1.Points.Add(d.AddDays(i), rand.Next(116, 129)); } else if (i > 91) { series1.Points.Add(d.AddDays(i), rand.Next(125, 138)); } } this.chartControl1.Series[0].Style.Border.Width = 2; this.chartControl1.PrimaryYAxis.RangeType = ChartAxisRangeType.Set; this.chartControl1.PrimaryYAxis.Range = new MinMaxInfo(0, 160, 20); this.chartControl1.PrimaryYAxis.Format = " 0"; chartControl1.ShowLegend = false; this.chartControl1.PrimaryXAxis.ValueType = ChartValueType.DateTime; this.chartControl1.PrimaryXAxis.DateTimeFormat = "M/d/yy"; this.chartControl1.PrimaryXAxis.RangeType = ChartAxisRangeType.Set; this.chartControl1.PrimaryXAxis.LabelIntersectAction = ChartLabelIntersectAction.MultipleRows; this.chartControl1.PrimaryXAxis.DateTimeRange = new ChartDateTimeRange(d.AddDays(-1), d.AddDays(this.chartControl1.Series[0].Points.Count), 8, ChartDateTimeIntervalType.Days); }
protected void InitializeData() { #region Add Series Color[] color1 = new Color[] { Color.FromArgb(41, 88, 145), Color.FromArgb(118, 178, 249), Color.FromArgb(41, 88, 145) }; Color[] color2 = new Color[] { Color.FromArgb(123, 156, 56), Color.FromArgb(211, 247, 131), Color.FromArgb(123, 156, 56) }; Color[] color3 = new Color[] { Color.FromArgb(149, 44, 41), Color.FromArgb(251, 120, 116), Color.FromArgb(149, 44, 41) }; Color[] color4 = new Color[] { Color.FromArgb(209, 115, 114), Color.FromArgb(255, 194, 191), Color.FromArgb(209, 115, 114) }; Color[] color5 = new Color[] { Color.FromArgb(39, 133, 158), Color.FromArgb(133, 230, 254), Color.FromArgb(39, 133, 158) }; Color[] color6 = new Color[] { Color.FromArgb(203, 108, 30), Color.FromArgb(254, 196, 101), Color.FromArgb(203, 108, 30) }; Color[] color8 = new Color[] { Color.FromArgb(116, 147, 51), Color.FromArgb(194, 229, 121), Color.FromArgb(116, 147, 51) }; Color[] color9 = new Color[] { Color.FromArgb(88, 62, 120), Color.FromArgb(182, 147, 223), Color.FromArgb(88, 62, 120) }; ChartSeries series5 = new ChartSeries(); series5.Name = "Model3_Blue"; series5.Text = "Blue"; series5.Points.Add(1995, 30); series5.Points.Add(2000, 55); series5.Points.Add(2005, 80); series5.Style.Images = new ChartImageCollection(this.imageListAdv1.Images); series5.Style.ImageIndex = 4; series5.Style.Interior = new Syncfusion.Drawing.BrushInfo(GradientStyle.Horizontal, color5); series5.Style.Border.Color = Color.FromArgb(48, 98, 112); series5.Type = ChartSeriesType.Spline; series5.Style.Border.Width = 3; series5.Style.Symbol.Shape = ChartSymbolShape.Circle; series5.Style.Symbol.Color = Color.White; series5.Style.Symbol.Border.Color = Color.FromArgb(39, 133, 158); series5.Style.Symbol.Border.Width = 3; series5.Style.Border.Width = 3; chartControl1.Series.Add(series5); ChartSeries series6 = new ChartSeries(); series6.Name = "Model3_Green"; series6.Text = "Orange"; series6.Points.Add(1995, 50); series6.Points.Add(2000, 43); series6.Points.Add(2005, 65); series6.Style.Images = new ChartImageCollection(this.imageListAdv1.Images); series6.Style.ImageIndex = 5; series6.Style.Interior = new Syncfusion.Drawing.BrushInfo(GradientStyle.Horizontal, color6); series6.Style.Border.Color = Color.FromArgb(240, 139, 47); series6.Type = ChartSeriesType.Line; series6.Style.Border.Width = 3; series6.Style.Symbol.Shape = ChartSymbolShape.Circle; series6.Style.Symbol.Color = Color.White; series6.Style.Symbol.Border.Color = Color.FromArgb(203, 108, 30); series6.Style.Symbol.Border.Width = 3; chartControl1.Series.Add(series6); ChartSeries series7 = new ChartSeries(); series7.Name = "Model4_Blue"; series7.Text = "Green"; series7.Points.Add(1995, 43); series7.Points.Add(2000, 62); series7.Points.Add(2005, 60); series7.Style.Images = new ChartImageCollection(this.imageListAdv1.Images); series7.Style.ImageIndex = 6; series7.Style.Interior = new Syncfusion.Drawing.BrushInfo(GradientStyle.Horizontal, color8); series7.Style.Border.Color = Color.FromArgb(106, 127, 64); series7.Type = ChartSeriesType.Line; series7.Style.Border.Width = 3; series7.Style.Symbol.Shape = ChartSymbolShape.Circle; series7.Style.Symbol.Color = Color.White; series7.Style.Symbol.Border.Color = Color.FromArgb(116, 147, 51); series7.Style.Symbol.Border.Width = 3; chartControl1.Series.Add(series7); ChartSeries series8 = new ChartSeries(); series8.Name = "Model4_Blue"; series8.Text = "Purple"; series8.Points.Add(1995, 48); series8.Points.Add(2000, 71); series8.Points.Add(2005, 66); series8.Style.Images = new ChartImageCollection(this.imageListAdv1.Images); series8.Style.ImageIndex = 7; series8.Style.Interior = new Syncfusion.Drawing.BrushInfo(GradientStyle.Horizontal, color9); series8.Style.Border.Color = Color.FromArgb(75, 61, 92); series8.Type = ChartSeriesType.Spline; series8.Style.Border.DashStyle = DashStyle.DashDotDot; series8.Style.Border.Width = 3; chartControl1.Series.Add(series8); ChartSeries series1 = new ChartSeries(); series1.Name = "Model1_Blue"; series1.Text = "Blue"; series1.Points.Add(1995, 40); series1.Points.Add(2000, 60); series1.Points.Add(2005, 75); series1.Style.Images = new ChartImageCollection(this.imageListAdv1.Images); series1.Style.ImageIndex = 0; series1.Style.Interior = new Syncfusion.Drawing.BrushInfo(GradientStyle.Horizontal, color1); series1.Style.Border.Color = Color.FromArgb(49, 73, 102); chartControl1.Series.Add(series1); ChartSeries series2 = new ChartSeries(); series2.Name = "Model1_Green"; series2.Text = "Green"; series2.Points.Add(1995, 35); series2.Points.Add(2000, 70); series2.Points.Add(2005, 45); series2.Style.Images = new ChartImageCollection(this.imageListAdv1.Images); series2.Style.ImageIndex = 1; series2.Style.Interior = new Syncfusion.Drawing.BrushInfo(GradientStyle.Horizontal, color2); series2.Style.Border.Color = Color.FromArgb(151, 188, 75); chartControl1.Series.Add(series2); ChartSeries series3 = new ChartSeries(); series3.Name = "Model2_Blue"; series3.Text = "Red"; series3.Points.Add(1995, 60); series3.Points.Add(2000, 35); series3.Points.Add(2005, 55); series3.Style.Images = new ChartImageCollection(this.imageListAdv1.Images); series3.Style.ImageIndex = 2; series3.Style.Interior = new Syncfusion.Drawing.BrushInfo(GradientStyle.Horizontal, color3); series3.Style.Border.Color = Color.FromArgb(110, 68, 67); chartControl1.Series.Add(series3); ChartSeries series4 = new ChartSeries(); series4.Name = "Model2_Green"; series4.Text = "Pink"; series4.Points.Add(1995, 45); series4.Points.Add(2000, 50); series4.Points.Add(2005, 35); series4.Style.Images = new ChartImageCollection(this.imageListAdv1.Images); series4.Style.ImageIndex = 3; series4.Style.Interior = new Syncfusion.Drawing.BrushInfo(GradientStyle.Horizontal, color4); series4.Style.Border.Color = Color.FromArgb(169, 119, 118); chartControl1.Series.Add(series4); this.chartControl1.ShowLegend = false; #endregion #region Add Legend ChartLegend legend1 = new ChartLegend(chartControl1); ChartLegend legend2 = new ChartLegend(chartControl1); ChartLegend legend3 = new ChartLegend(chartControl1); ChartLegend legend5 = new ChartLegend(chartControl1); ChartLegend legend6 = new ChartLegend(chartControl1); legend1.Name = "legend1"; legend2.Name = "legend2"; legend3.Name = "legend3"; legend5.Name = "legend5"; legend6.Name = "legend6"; legend1.Text = "Zen"; legend2.Text = "Ford"; legend3.Text = "Sedan"; legend5.Text = "MobileHome"; legend6.Text = "Oldtimer"; chartControl1.Legends.Add(legend1); chartControl1.Legends.Add(legend2); chartControl1.Legends.Add(legend3); chartControl1.Legends.Add(legend5); chartControl1.Legends.Add(legend6); series1.LegendName = "legend1"; series2.LegendName = "legend1"; series3.LegendName = "legend2"; series4.LegendName = "legend2"; series5.LegendName = "legend3"; series6.LegendName = "legend3"; series7.LegendName = "legend5"; series8.LegendName = "legend6"; legend1.Spacing = 0; legend2.Spacing = 0; legend3.Spacing = 0; legend5.Spacing = 0; legend6.Spacing = 0; for (int i = 0; i < this.chartControl1.Series.Count; i++) { this.chartControl1.Series[i].Style.Border.Color = Color.Transparent; } #endregion #region AutoHighlight this.chartControl1.AutoHighlight = true; foreach (ChartSeries series in this.chartControl1.Series) { Color[] highlightcolor = new Color[] { Color.FromArgb(255, 204, 68), Color.FromArgb(254, 234, 180), Color.FromArgb(250, 186, 13) }; series.Style.HighlightInterior = new BrushInfo(GradientStyle.Horizontal, highlightcolor); } this.chartControl1.Refresh(); #endregion #region Legend Settings foreach (ChartLegend chartLegend in this.chartControl1.Legends) { if (chartLegend.Name == "legend1" || chartLegend.Name == "legend2" || chartLegend.Name == "legend3" || chartLegend.Name == "legend5" || chartLegend.Name == "legend6") { chartLegend.Position = ChartDock.Bottom; chartLegend.Alignment = ChartAlignment.Center; } chartLegend.RepresentationType = ChartLegendRepresentationType.SeriesImage; chartLegend.Font = new Font("Segoe UI", 8.5f, FontStyle.Bold); chartLegend.ForeColor = Color.FromArgb(23, 83, 120); chartLegend.BackInterior = new BrushInfo(GradientStyle.Vertical, legendColor); chartLegend.ShowBorder = true; chartLegend.Border.ForeColor = Color.FromArgb(143, 192, 223); chartLegend.Border.Width = 1; foreach (ChartLegendItem cli in chartLegend.Items) { cli.Font = new Font("Segoe UI", 8.0f, FontStyle.Regular); cli.TextColor = Color.Black; cli.RepresentationSize = new Size(32, 32); } this.chartControl1.DockingManager.LayoutMode = ChartLayoutMode.Wrap; this.chartControl1.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.Default; } #endregion }
private FinancialTechnicalIndicator Addindicator(string value, int rowIndex) { FinancialTechnicalIndicator indicator; switch (value) { case "Accumulation Distribution": indicator = new AccumulationDistributionIndicator(); break; case "Average True Range": indicator = new AverageTrueRangeIndicator() { Period = 1 }; break; case "Bollinger Band": indicator = new BollingerBandIndicator() { UpperLineColor = Brushes.Green, Period = 3 }; break; case "Exponential Average": indicator = new ExponentialAverageIndicator(); break; case "MACD": indicator = new MACDTechnicalIndicator() { Period = 5, LongPeriod = 12, ShortPeriod = 6, ConvergenceLineColor = Brushes.Green }; break; case "Momentum": indicator = new MomentumTechnicalIndicator() { Period = 4 }; break; case "RSI": indicator = new RSITechnicalIndicator() { Period = 4, UpperLineColor = Brushes.Green }; break; case "Simple Average": indicator = new SimpleAverageIndicator(); break; case "Stochastic": indicator = new StochasticTechnicalIndicator() { UpperLineColor = Brushes.Green }; break; case "Triangular Average": indicator = new TriangularAverageIndicator(); break; default: return(null); } var index = rowIndex == 0 ? 1 : 0; ChartSeries Series = this.SfChart.VisibleSeries[index] as ChartSeries; indicator.XBindingPath = "TimeStamp"; indicator.High = "High"; indicator.Low = "Low"; indicator.Open = "Open"; indicator.Close = "Last"; indicator.Volume = "Volume"; Binding binding = new Binding(); binding.Path = new PropertyPath("ItemsSource"); binding.Source = Series; binding.Mode = BindingMode.TwoWay; indicator.SetBinding(FinancialTechnicalIndicator.ItemsSourceProperty, binding); return(indicator); }
protected void InitializeChartData() { this.chartControl1.Series.Clear(); Random rand = new Random(); ChartSeries series2 = new ChartSeries(); series2.Type = ChartSeriesType.RangeArea; ChartSeries series1 = new ChartSeries(); series1.Name = "Stock1"; series1.Type = ChartSeriesType.Candle; series1.Text = series1.Name; this.chartControl1.Series.Add(series1); series1.PrepareStyle += new ChartPrepareStyleInfoHandler(series1_PrepareStyle); this.chartControl1.Series.Add(series2); //Date, High, Low, Close, Open values. for (int i = 0; i < 70; i++) { if (i <= 10) { series1.Points.Add(d.AddDays(i), rand.Next(32, 38), rand.Next(20, 24), rand.Next(28, 32), rand.Next(24, 32)); series2.Points.Add(d.AddDays(i), rand.Next(13, 15), rand.Next(37, 40)); } // small one else if (i > 10 && i <= 12) { series1.Points.Add(d.AddDays(i), rand.Next(42, 45), rand.Next(30, 34), rand.Next(36, 42), rand.Next(38, 42)); series2.Points.Add(d.AddDays(i), rand.Next(20, 21), rand.Next(49, 50)); } else if (i > 12 && i <= 19) { series1.Points.Add(d.AddDays(i), rand.Next(48, 50), rand.Next(40, 42), rand.Next(42, 48), rand.Next(44, 48)); series2.Points.Add(d.AddDays(i), rand.Next(31, 33), rand.Next(58, 60)); } // small else if (i > 19 && i <= 23) { series1.Points.Add(d.AddDays(i), rand.Next(54, 60), rand.Next(45, 49), rand.Next(49, 54), rand.Next(50, 52)); series2.Points.Add(d.AddDays(i), rand.Next(40, 45), rand.Next(60, 65)); } else if (i > 23 && i <= 29) { series1.Points.Add(d.AddDays(i), rand.Next(54, 60), rand.Next(45, 49), rand.Next(49, 54), rand.Next(50, 54)); series2.Points.Add(d.AddDays(i), rand.Next(40, 45), rand.Next(60, 65)); } //small else if (i > 29 && i <= 32) { series1.Points.Add(d.AddDays(i), rand.Next(62, 65), rand.Next(55, 57), rand.Next(57, 62), rand.Next(60, 62)); series2.Points.Add(d.AddDays(i), rand.Next(45, 50), rand.Next(65, 70)); } else if (i > 32 && i <= 49) { series1.Points.Add(d.AddDays(i), rand.Next(68, 72), rand.Next(60, 64), rand.Next(62, 68), rand.Next(64, 68)); series2.Points.Add(d.AddDays(i), rand.Next(50, 55), rand.Next(75, 78)); } else if (i > 49 && i <= 51) { series1.Points.Add(d.AddDays(i), rand.Next(58, 60), rand.Next(55, 58), rand.Next(58, 64), rand.Next(63, 64)); series2.Points.Add(d.AddDays(i), rand.Next(50, 55), rand.Next(65, 75)); } else if (i > 51) { series1.Points.Add(d.AddDays(i), rand.Next(60, 65), rand.Next(52, 54), rand.Next(54, 58), rand.Next(56, 58)); series2.Points.Add(d.AddDays(i), rand.Next(40, 45), rand.Next(60, 70)); } } this.chartControl1.PrimaryYAxis.RangeType = ChartAxisRangeType.Set; this.chartControl1.PrimaryYAxis.Range = new MinMaxInfo(0, 100, 20); this.chartControl1.PrimaryYAxis.Title = "Stock Price"; this.chartControl1.Text = "Bollinger Bands"; this.chartControl1.PrimaryXAxis.ValueType = ChartValueType.DateTime; this.chartControl1.PrimaryXAxis.DateTimeFormat = "MMM-dd-yy"; this.chartControl1.PrimaryXAxis.RangeType = ChartAxisRangeType.Set; this.chartControl1.PrimaryXAxis.DateTimeRange = new ChartDateTimeRange(d.AddDays(-1), d.AddDays(60), 10, ChartDateTimeIntervalType.Days); this.chartControl1.PrimaryXAxis.LabelIntersectAction = ChartLabelIntersectAction.Rotate; }
protected void grid_RowDataBound(object sender, GridViewRowEventArgs e) { String ter = ((GridView)sender).ToolTip; if (e.Row.RowIndex == 3) { e.Row.BackColor = Color.LightSteelBlue; e.Row.Cells[13].Text = "Annual"; e.Row.Cells[0].Font.Underline = true; } // Total rows if (e.Row.RowIndex == 4 || e.Row.RowIndex == 5 || e.Row.RowIndex == 6 || e.Row.RowIndex == 7) { int total = 0; for (int i = 1; i < e.Row.Cells.Count - 1; i++) { int this_val = 0; Int32.TryParse(e.Row.Cells[i].Text, out this_val); total += this_val; if (!ter.Contains("_break")) { // If book value if (e.Row.RowIndex == 4) { group_bookvalue[(i - 1)] = Convert.ToInt32(group_bookvalue[(i - 1)]) + this_val; group_bookvalue[12] += this_val; } // If outstanding else if (e.Row.RowIndex == 5) { group_outstanding[(i - 1)] = Convert.ToInt32(group_outstanding[(i - 1)]) + this_val; group_outstanding[12] += this_val; } // If litigation else if (e.Row.RowIndex == 6) { group_litigation[(i - 1)] = Convert.ToInt32(group_litigation[(i - 1)]) + this_val; group_litigation[12] += this_val; } // If red line else { group_red_line[(i - 1)] = Convert.ToInt32(group_red_line[(i - 1)]) + this_val; group_red_line[12] += this_val; } } e.Row.Cells[i].Text = Util.TextToCurrency(this_val.ToString(), "usd"); } e.Row.Cells[13].Text = Util.TextToCurrency(total.ToString(), "usd"); } else if (e.Row.RowIndex == 8 && ter != "Group") // ADP { ChartSeries cs = new ChartSeries(ter, ChartSeriesType.Line); if (!ter.Contains("_break")) { cs.Appearance.LegendDisplayMode = Telerik.Charting.ChartSeriesLegendDisplayMode.SeriesName; for (int i = 0; i < offices.Rows.Count; i++) { if (ter == offices.Rows[i]["Office"].ToString()) { cs.Appearance.FillStyle.MainColor = Util.ColourTryParse(offices.Rows[i]["Colour"].ToString()); break; } } rc_line_adp.Series.Add(cs); } for (int i = 1; i < e.Row.Cells.Count - 1; i++) { double adp = 0.0; if (e.Row.Cells[i].Text == " " || e.Row.Cells[i].Text == "0") { e.Row.Cells[i].Text = "-"; } else { String qry = "SELECT FORMAT(AVG(DATEDIFF(date_paid, ent_date)),1) as 'ADP' " + "FROM db_salesbook sb, db_salesbookhead sbh " + "WHERE sb.sb_id = sbh.SalesBookID " + "AND date_paid >= ent_date " + "AND date_paid <= NOW() " + "AND date_paid IS NOT NULL " + "AND deleted=0 AND IsDeleted=0 AND red_lined=0 " + "AND sbh.SalesBookID=@sb_id"; DataTable dt_adp = SQL.SelectDataTable(qry, "@sb_id", e.Row.Cells[i].Text); if (dt_adp.Rows.Count > 0 && dt_adp.Rows[0]["ADP"] != DBNull.Value) { e.Row.Cells[i].Text = dt_adp.Rows[0]["ADP"].ToString(); adp = Convert.ToDouble(dt_adp.Rows[0]["ADP"]); group_adp[i - 1] += adp; region_adp[i - 1] += adp; } else { e.Row.Cells[i].Text = "-"; } } if (!ter.Contains("_break")) { // cap adp to 100 if (adp > 100) { adp = 100; } ChartSeriesItem csi_item = new ChartSeriesItem(adp, " "); cs.AddItem(csi_item); } } if (cb_region.Checked) { if (!ter.Contains("_break")) { region_adp[12]++; // use 12th index as number of offices per region } else { for (int i = 1; i < e.Row.Cells.Count - 1; i++) { e.Row.Cells[i].Text = (region_adp[i - 1] / region_adp[12]).ToString("N1"); region_adp[i - 1] = 0; } region_adp[12] = 0; } } } else if (e.Row.RowIndex == 9) // PAID % { decimal sum = 0; decimal val = 0; int numnums = 0; for (int i = 1; i < e.Row.Cells.Count - 1; i++) { // Fix _break header names when grouping by region if (cb_region.Checked) { if (((GridView)sender).Rows[3].Cells[i].Text.Contains("_break")) { ((GridView)sender).Rows[3].Cells[i].Text = Server.HtmlEncode(months[(i - 1)] + " " + dd_year.SelectedItem.Text); } } Decimal.TryParse(e.Row.Cells[i].Text, out val); if (!ter.Contains("_break")) { group_paid[(i - 1)] += val; } if (val != 0) { numnums++; } sum += val; if (ter != "Group") { // Grab paid% history from previous day String qry = "SELECT Paid FROM db_cashreporthistory WHERE Date=@date AND Office=@office AND Year=@year AND CalendarMonth=@cal_month"; DataTable history = SQL.SelectDataTable(qry, new String[] { "@date", "@office", "@year", "@cal_month" }, new Object[] { DateTime.Now.Date.Subtract(new TimeSpan(24, 0, 0)).ToString("yyyy/MM/dd").Substring(0, 10), ter, dd_year.SelectedItem.Text, ((GridView)sender).Columns[i].HeaderText }); // Add coloured labels for today/yesterday Label lbl_paid_cur = new Label(); lbl_paid_cur.Text = Server.HtmlEncode(e.Row.Cells[i].Text + "%"); ImageButton arrow = new ImageButton(); arrow.Enabled = false; arrow.Height = arrow.Width = 10; arrow.Attributes.Add("style", "position:relative; top:1px; left:3px;"); if (history.Rows.Count > 0) { if (Convert.ToDouble(e.Row.Cells[i].Text) > Convert.ToDouble(history.Rows[0]["Paid"])) { lbl_paid_cur.ForeColor = Color.Green; arrow.ImageUrl = "~/Images/Icons/qr_Up.png"; } else if (Convert.ToDouble(history.Rows[0]["Paid"]) > Convert.ToDouble(e.Row.Cells[i].Text)) { lbl_paid_cur.ForeColor = Color.Red; arrow.ImageUrl = "~/Images/Icons/qr_Down.png"; } else if (Convert.ToDouble(history.Rows[0]["Paid"]) == Convert.ToDouble(e.Row.Cells[i].Text)) { //lbl_paid_cur.ForeColor = Color.Orange; arrow.Height = 8; arrow.ImageUrl = "~/Images/Icons/qr_Equal.png"; } arrow.ToolTip = "Yesterday's value: " + history.Rows[0]["Paid"].ToString() + "%"; } else { arrow.Height = arrow.Width = 12; arrow.ImageUrl = "~/Images/Icons/qr_Unknown.png"; arrow.ToolTip = "No history found"; arrow.Attributes.Add("style", "position:relative; top:2px; left:3px;"); } e.Row.Cells[i].Controls.Add(lbl_paid_cur); e.Row.Cells[i].Controls.Add(arrow); } } decimal avg = 0; if (sum != 0 && numnums != 0) { if (!ter.Contains("_break")) { group_paid[13] += 1; } avg = sum / numnums; } if (!ter.Contains("_break")) { group_paid[12] += avg; } e.Row.Cells[13].Text = avg.ToString("N2") + "% (avg.)"; // LAST ROW, DO GROUP if (ter == "Group") { GridView gv_group = (GridView)sender; GridViewRow bookval = gv_group.Rows[4]; GridViewRow outstanding = gv_group.Rows[5]; GridViewRow litigation = gv_group.Rows[6]; GridViewRow redline = gv_group.Rows[7]; GridViewRow adp = gv_group.Rows[8]; // Add series to group chart rc_line_gadp.Clear(); ChartSeries cs = new ChartSeries("Group Avg", ChartSeriesType.Line); cs.Appearance.LegendDisplayMode = Telerik.Charting.ChartSeriesLegendDisplayMode.SeriesName; rc_line_gadp.Series.Add(cs); double total_g_avg_value = 0; int total_g_avg_moths = 0; for (int j = 1; j < bookval.Cells.Count; j++) { // GROUP BOOKVAL bookval.Cells[j].Text = Util.TextToCurrency(group_bookvalue[(j - 1)].ToString(), "USD"); // GROUP OUTSTANDING outstanding.Cells[j].Text = Util.TextToCurrency(group_outstanding[(j - 1)].ToString(), "USD"); // GROUP LITIGATION litigation.Cells[j].Text = Util.TextToCurrency(group_litigation[(j - 1)].ToString(), "USD"); // GROUP RED LINE redline.Cells[j].Text = Util.TextToCurrency(group_red_line[(j - 1)].ToString(), "USD"); // GROUP ADP if (group_adp[(j - 1)] == 0) { e.Row.Cells[j].Text = "0 (avg.)"; } else { double avg_adp = (((double)group_adp[(j - 1)]) / offices.Rows.Count); total_g_avg_value += avg_adp; total_g_avg_moths++; adp.Cells[j].Text = avg_adp.ToString("N2") + " (avg.)"; // Add to group chart ChartSeriesItem csi_item = new ChartSeriesItem(avg_adp, " "); cs.AddItem(csi_item); } // GROUP PAID if (group_paid[13] == 0) { e.Row.Cells[j].Text = "0.0% (avg.)"; } else { e.Row.Cells[j].Text = ((group_paid[(j - 1)]) / group_paid[13]).ToString("N2") + "% (avg.)"; } } // Add month names to line chart rc_line_adp.PlotArea.XAxis.Items.Clear(); rc_line_gadp.PlotArea.XAxis.Items.Clear(); for (int i = 1; i < e.Row.Cells.Count - 1; i++) { String issue_name = ((GridView)sender).HeaderRow.Cells[i].Text; rc_line_adp.PlotArea.XAxis.Items.Add(new ChartAxisItem(issue_name)); rc_line_gadp.PlotArea.XAxis.Items.Add(new ChartAxisItem(issue_name)); } // Add group average line rc_line_gadp.PlotArea.MarkedZones.Clear(); ChartMarkedZone g_avg = new ChartMarkedZone(); g_avg.Appearance.FillStyle.MainColor = Color.Orange; double g_avg_value = total_g_avg_value / total_g_avg_moths; g_avg.ValueStartY = g_avg_value; g_avg.ValueEndY = g_avg_value + (g_avg_value / 100) * 2; rc_line_gadp.PlotArea.MarkedZones.Add(g_avg); rc_line_gadp.ChartTitle.TextBlock.Text = "Group Average Days to Pay (" + g_avg_value.ToString("N1") + " avg.)"; // set chart title } } }
protected void InitializeChartData() { // // Series 1 // ChartSeries series1 = new ChartSeries("Temperature"); series1.Type = ChartSeriesType.Line; DateTime dateTime = new DateTime(1900, 1, 1); double value = 100; double value1 = 50; Random random = new Random(); for (var i = 1; i < 2000; i++) { if (random.NextDouble() > .5) { value += random.NextDouble(); } else { value -= random.NextDouble(); } series1.Points.Add(dateTime.AddMonths(i), value); } // // Series 2 // ChartSeries series2 = new ChartSeries("Rainfall"); series2.Text = series2.Name; series2.Type = ChartSeriesType.Line; series2.FancyToolTip.Visible = true; for (var j = 1; j < 2000; j++) { if (random.NextDouble() > .5) { value1 += random.NextDouble(); } else { value1 -= random.NextDouble(); } series2.Points.Add(dateTime.AddDays(j), value1); } this.chartControl1.Series.Add(series1); this.chartControl1.Series.Add(series2); // // SecondaryYAxis // secYAxis.Title = "Rainfall"; secYAxis.TitleFont = new Font("Segoe UI", 16f); secYAxis.DrawGrid = false; secYAxis.Range = new MinMaxInfo(0, 160, 20); secYAxis.HidePartialLabels = true; secYAxis.OpposedPosition = true; secYAxis.LabelIntersectAction = ChartLabelIntersectAction.Rotate; secYAxis.LineType.ForeColor = Color.FromArgb(213, 219, 204); secYAxis.ValueType = ChartValueType.Double; secYAxis.Orientation = ChartOrientation.Vertical; secYAxis.GridLineType.BackColor = Color.FromArgb(250, 209, 150, 150); secYAxis.GridLineType.ForeColor = Color.FromArgb(250, 230, 193, 193); secYAxis.GridLineType.PenType = System.Drawing.Drawing2D.PenType.LinearGradient; secYAxis.LineType.ForeColor = Color.FromArgb(213, 219, 204); secYAxis.Font = new Font("Segoe UI", 10.25f); secYAxis.FormatLabel += SecYAxis_FormatLabel; secYAxis.ShowCrosshairTooltip = true; this.chartControl1.Axes.Add(secYAxis); this.chartControl1.Series[1].YAxis = secYAxis; // // SecondaryXAxis // secXAxis.ShowCrosshairTooltip = true; secXAxis.DrawGrid = false; secXAxis.ValueType = ChartValueType.DateTime; secXAxis.LabelRotate = true; secXAxis.LabelRotateAngle = 90; secXAxis.RangePaddingType = ChartAxisRangePaddingType.None; secXAxis.Orientation = ChartOrientation.Horizontal; secXAxis.DateTimeFormat = "MMM/dd"; this.chartControl1.Axes.Add(secXAxis); this.chartControl1.Series[1].XAxis = secXAxis; this.chartControl1.PrimaryXAxis.DateTimeRange = new ChartDateTimeRange(series1.Points[0].DateX, series1.Points[1998].DateX, 15, ChartDateTimeIntervalType.Years); }
private void SetupChart(double prideScore, string growthScoreText, double finalScore) { evaluationChart.Series.Clear(); var series = new ChartSeries("EvaluationData", ChartSeriesType.Bar); double growthScore = Math.Round(DataIntegrity.ConvertToDouble(growthScoreText), 2); series.Appearance.LegendDisplayMode = ChartSeriesLegendDisplayMode.Nothing; series.Appearance.TextAppearance.TextProperties.Color = System.Drawing.Color.White; series.Appearance.TextAppearance.TextProperties.Font = new System.Drawing.Font(evaluationChart.ChartTitle.TextBlock.Appearance.TextProperties.Font.Name, 12, evaluationChart.ChartTitle.TextBlock.Appearance.TextProperties.Font.Unit); series.Appearance.LabelAppearance.LabelLocation = StyleSeriesItemLabel.ItemLabelLocation.Inside; evaluationChart.AddChartSeries(series); series.AddItem(GetChartSeriesItem(prideScore, System.Drawing.Color.FromArgb(153, 255, 51), System.Drawing.Color.FromArgb(0, 0, 0))); series.AddItem(GetChartSeriesItem(growthScore, System.Drawing.Color.FromArgb(0, 0, 255), System.Drawing.Color.FromArgb(255, 255, 255))); if (!string.IsNullOrEmpty(growthScoreText) || _isPrideGroup) series.AddItem(GetChartSeriesItem(finalScore, System.Drawing.Color.FromArgb(228, 108, 10), System.Drawing.Color.FromArgb(255, 255, 255))); //Chart Styles evaluationChart.PlotArea.XAxis.Visible = Telerik.Charting.Styles.ChartAxisVisibility.False; evaluationChart.PlotArea.YAxis.MaxValue = 4.0; evaluationChart.PlotArea.YAxis.AutoScale = false; BuildChartLegend((!string.IsNullOrEmpty(growthScoreText) || _isPrideGroup)); }
private static IEnumerable GetDataPoints(ChartSeries series) { var dataPoints = (IEnumerable)series.GetType().GetProperty("DataPoints").GetValue(series); return dataPoints; }
public DnnChartSeriesItem(ChartSeries parent) : base(parent) { }
protected void GetChart() { HttpCookie cookie = Request.Cookies["BrowserDate"]; ConsumerRadChart.Series.Clear(); ConsumerRadChart.Clear(); ConsumerRadChart.PlotArea.Chart.Series.Clear(); ConsumerRadChart.PlotArea.XAxis.Clear(); ConsumerRadChart.PlotArea.YAxis.Clear(); Data dat = new Data(DateTime.Parse(cookie.Value.ToString().Replace("%20", " ").Replace("%3A", ":"))); string adID = AdDropDown.SelectedItem.Value; DataView dvAd = dat.GetDataDV("SELECT * FROM Ads WHERE Ad_ID=" + adID); DataView dvAdCategories = dat.GetDataDV("SELECT DISTINCT AC.Name, ACM.CategoryID FROM "+ "Ad_Category_Mapping ACM, AdCategories AC WHERE AC.ID=ACM.CategoryID AND ACM.AdID=" + adID); TitleLabel.Text = "<span style=\"font-size: 30px;color: white;\">Statistics For Ad: <span style=\"color: #1fb6e7;\">" + dvAd[0]["Header"].ToString() + "</span></span><hr>"; TitleLabel.Text += "<table cellspacing=\"20px\"><tr valign=\"top\"><td>"; if (bool.Parse(dvAd[0]["BigAd"].ToString())) TitleLabel.Text += "<br/><b>Ad Type: </b><span style=\"color: #1fb6e7; font-weight: bold;\">Big Ad</span>"; else TitleLabel.Text += "<br/><b>Ad Type: </b><span style=\"color: #1fb6e7; font-weight: bold;\">Normal Ad</span>"; int totalViews = int.Parse(dvAd[0]["NumViews"].ToString()); int currentViews = int.Parse(dvAd[0]["NumCurrentViews"].ToString()); DataView dvAdStatistics = dat.GetDataDV("SELECT CASE WHEN LocationOnly = 'True' THEN 'Location Only' " + "WHEN WasEmail = 'True' THEN 'Email View' WHEN Reason = 'NonAssigned' THEN 'Non-Assigned User' " + "ELSE dbo.GetCategories(Reason) END AS 'Reason', CASE WHEN LocationOnly = 'True' THEN 'Location Only' " + "WHEN WasEmail = 'True' THEN 'Email View' WHEN Reason = 'NonAssigned' THEN 'Non-Assigned User' " + "ELSE dbo.GetCategories(Reason) END AS 'Reason For View [Location Only, " + "Non-Assigned User or list of Categories]', Date " + "FROM AdStatistics WHERE AdID=" + adID + " GROUP BY [Date], UserID, IP, LocationOnly, WasEmail, Reason ORDER BY [Date] DESC"); DataView dvAdStatistics2 = dat.GetDataDV("SELECT LocationOnly, WasEmail, Reason " + ", Date " + "FROM AdStatistics WHERE AdID=" + adID + " GROUP BY [Date], UserID, IP, LocationOnly, WasEmail, " + "Reason ORDER BY [Date] DESC"); string lastDayDay = ""; if (dvAdStatistics2.Count > 0) lastDayDay = DateTime.Parse(dvAdStatistics2[0]["Date"].ToString()).Date.ToShortDateString(); dvAdStatistics2.RowFilter = "WasEmail = 1"; int wasEmailCount = dvAdStatistics2.Count; int notEmailCount = currentViews - wasEmailCount; if (currentViews < totalViews) { TitleLabel.Text += "<br/><b>Status: </b><span style=\"color: #1fb6e7; font-weight: bold;\">Ad is still running</span>"; TitleLabel.Text += "<br/><b>Number of Views Needed: </b><span style=\"color: #1fb6e7; font-weight: bold;\">" + totalViews.ToString() + "</span>"; TitleLabel.Text += "</td><td>"; TitleLabel.Text += "<br/><b>Number of Current Views: </b><span style=\"color: #1fb6e7; font-weight: bold;\">" + currentViews.ToString() + "</span>"; TitleLabel.Text += "<br/><b>Views by Email: </b><span style=\"color: #1fb6e7; font-weight: bold;\">" + wasEmailCount.ToString() + "</span>"; TitleLabel.Text += "<br/><b>Views on Site: </b><span style=\"color: #1fb6e7; font-weight: bold;\">" + notEmailCount.ToString() + "</span>"; TitleLabel.Text += "</td><td>"; TitleLabel.Text += "<br/><b>Display To All: </b><span style=\"color: #1fb6e7; font-weight: bold;\">" + dvAd[0]["DisplayToAll"].ToString() + "</span>"; TitleLabel.Text += "<br/><b>Display To Non-Users: </b><span style=\"color: #1fb6e7; font-weight: bold;\">" + dvAd[0]["NonUsersAllowed"].ToString() + "</span>"; TitleLabel.Text += "</td></tr></table>"; } else { TitleLabel.Text += "<br/><b>Ad has finished running on:</b> <span style=\"color: #1fb6e7; font-weight: bold;\">" + lastDayDay + "</span>"; TitleLabel.Text += "</td><td>"; TitleLabel.Text += "<br/><b>Views by Email: </b><span style=\"color: #1fb6e7; font-weight: bold;\">" + wasEmailCount.ToString() + "</span>"; TitleLabel.Text += "<br/><b>Views on Site: </b><span style=\"color: #1fb6e7; font-weight: bold;\">" + notEmailCount.ToString() + "</span>"; TitleLabel.Text += "</td><td>"; TitleLabel.Text += "<br/><b>Display To All: </b><span style=\"color: #1fb6e7; font-weight: bold;\">" + dvAd[0]["DisplayToAll"].ToString() + "</span>"; TitleLabel.Text += "<br/><b>Display To Non-Users: </b><span style=\"color: #1fb6e7; font-weight: bold;\">" + dvAd[0]["NonUsersAllowed"].ToString() + "</span>"; TitleLabel.Text += "</td></tr></table>"; } //Construct the chart //for each entry in AdStatistics table for this particular ad //get the number of different categories it was in //One of the categories will be the location //increment each category if exists in AdStatistics entry //each category will have it's own series ArrayList listOfCategories = new ArrayList(dvAdCategories.Count); Hashtable hashOfCategories = new Hashtable(); char[] delim = { ';' }; string[] tokens; //Get the hash of the count of all the categories of the reason why the ad was seen. ListofUsersLiteral.Text = "<table cellpadding=\"10px\" style=\"font-size: 12px;border: solid 1px #1fb6e7; background-color: #1b1b1b;\"><tr><td>" + "<span style=\"font-size: 14px; font-weight: bold;\"></span>" + "</td><td><span style=\"font-size: 14px; font-weight: bold;\">Reason For View [Location Only, Non-Assigned User or list of Categories]</span>" + "</td><td><span style=\"font-size: 14px; font-weight: bold;\">Date</span></td></tr>"; //gv.DataSource = dvAdStatistics; //gv.DataBind(); for (int i = 0; i < dvAdStatistics.Count; i++) { ListofUsersLiteral.Text += "<tr><td>" + (i + 1).ToString() + "</td><td>"; ListofUsersLiteral.Text += dvAdStatistics[i]["Reason"].ToString(); //if (bool.Parse(dvAdStatistics[i]["LocationOnly"].ToString())) //{ // ListofUsersLiteral.Text += "Location Only"; // if (hashOfCategories.ContainsKey("-1")) // { // hashOfCategories["-1"] = int.Parse(hashOfCategories["-1"].ToString()) + 1; // } // else // { // hashOfCategories["-1"] = 1; // } //} //else //{ // if (dvAdStatistics[i]["Reason"].ToString().Trim() != "NonAssigned") // { // tokens = dvAdStatistics[i]["Reason"].ToString().Split(delim); // for (int j = 0; j < tokens.Length; j++) // { // if (tokens[j].Trim() != "") // { // dvAdCategories.RowFilter = "CategoryID = " + tokens[j]; // if (dvAdCategories.Count > 0) // ListofUsersLiteral.Text += dvAdCategories[0]["Name"].ToString() + ", "; // if (hashOfCategories.ContainsKey(tokens[j].Trim())) // { // hashOfCategories[tokens[j].Trim()] = // int.Parse(hashOfCategories[tokens[j].Trim()].ToString()) + 1; // } // else // { // hashOfCategories.Add(tokens[j].Trim(), 1); // } // } // } // if (ListofUsersLiteral.Text.Substring(ListofUsersLiteral.Text.Length - 2, 2) == ", ") // ListofUsersLiteral.Text = ListofUsersLiteral.Text.Substring(0, ListofUsersLiteral.Text.Length - 2); // } // else // { // ListofUsersLiteral.Text += "Non-Assigned User"; // if (hashOfCategories.ContainsKey("-2")) // { // hashOfCategories["-2"] = int.Parse(hashOfCategories["-2"].ToString()) + 1; // } // else // { // hashOfCategories["-2"] = 1; // } // } //} ListofUsersLiteral.Text += "</td><td>" + DateTime.Parse(dvAdStatistics[i]["Date"].ToString()).ToShortDateString() + "</td></tr>"; } dvAdCategories.RowFilter = ""; ListofUsersLiteral.Text += "</table>"; System.Drawing.Color level4Colora = System.Drawing.Color.FromArgb(51, 51, 51); System.Drawing.Color level4Colorb = System.Drawing.Color.FromArgb(134, 175, 200); System.Drawing.Color level3Colora = System.Drawing.Color.FromArgb(33, 65, 11); System.Drawing.Color level3Colorb = System.Drawing.Color.FromArgb(115, 148, 77); System.Drawing.Color level2Colora = System.Drawing.Color.FromArgb(213, 79, 2); System.Drawing.Color level2Colorb = System.Drawing.Color.FromArgb(244, 189, 67); System.Drawing.Color level1Colora = System.Drawing.Color.FromArgb(192, 140, 8); System.Drawing.Color level1Colorb = System.Drawing.Color.FromArgb(227, 201, 70); ConsumerRadChart.Chart.Series.Clear(); ConsumerRadChart.Chart.ChartTitle.TextBlock.Text = "Ad Statistics for '" + dvAd[0]["Header"].ToString() + "'. Date: " + lastDayDay.Trim(); ConsumerRadChart.Chart.ChartTitle.TextBlock.Appearance.AutoTextWrap = Telerik.Charting.Styles.AutoTextWrap.True; //Put the UserCount into the DV so that we can easily bind it to the chart DataTable dt = dvAdCategories.ToTable(); DataColumn dc = new DataColumn("UserCount"); DataColumn dc2 = new DataColumn("XCount"); dt.Columns.Add(dc); dt.Columns.Add(dc2); DataRow row; int colcount = 0; for (int i = 0; i < dvAdCategories.Count; i++) { if (hashOfCategories.ContainsKey(dvAdCategories[i]["CategoryID"].ToString())) { dt.Rows[i]["UserCount"] = int.Parse(hashOfCategories[dvAdCategories[i]["CategoryID"].ToString()].ToString()); dt.Rows[i]["XCount"] = colcount; colcount++; } } if (hashOfCategories.ContainsKey("-1")) { row = dt.NewRow(); row["UserCount"] = hashOfCategories["-1"].ToString(); row["Name"] = "Location Only"; row["CategoryID"] = "-1"; row["XCount"] = colcount; dt.Rows.Add(row); } if (hashOfCategories.ContainsKey("-2")) { row = dt.NewRow(); row["UserCount"] = hashOfCategories["-2"].ToString(); row["Name"] = "Non-Assigned User"; row["CategoryID"] = "-2"; row["XCount"] = colcount + 1; dt.Rows.Add(row); } dvAdCategories = new DataView(dt, "", "", DataViewRowState.CurrentRows); dvAdCategories.RowFilter = "Isnull(UserCount,'Null Column') <> 'Null Column'"; ChartSeries salesSeries1; int itemsCount = 0; ConsumerRadChart.DataGroupColumn = "Name"; ConsumerRadChart.DataSource = dvAdCategories; int maxYCount = 0; ConsumerRadChart.PlotArea.XAxis.LayoutMode = Telerik.Charting.Styles.ChartAxisLayoutMode.Between; ConsumerRadChart.PlotArea.XAxis.AutoShrink = true; ConsumerRadChart.SeriesOrientation = Telerik.Charting.ChartSeriesOrientation.Vertical; ConsumerRadChart.PlotArea.XAxis.AxisLabel.Appearance.RotationAngle = 45; for (int i = 0; i < dvAdCategories.Count; i++) { if (hashOfCategories.ContainsKey(dvAdCategories[i]["CategoryID"].ToString())) { //TitleLabel.Text += "<br/><br/>"+i.ToString()+": "+dvAdCategories[i]["Name"].ToString()+", userCount" + //dvAdCategories[i]["UserCount"].ToString() + ", XCount: "+dvAdCategories[i]["XCount"].ToString() + //", catID: " + dvAdCategories[i]["CategoryID"].ToString(); salesSeries1 = new ChartSeries(dvAdCategories[i]["Name"].ToString(), ChartSeriesType.Bar); //salesSeries1.Appearance.LabelAppearance.Visible = false; for (int j = 0; j < itemsCount; j++) { ChartSeriesItem chartSI = new ChartSeriesItem(true); chartSI.Visible = false; salesSeries1.Items.Add(chartSI); } salesSeries1.DataYColumn = "UserCount"; salesSeries1.DataXColumn = "XCount"; salesSeries1.DataLabelsColumn = "UserCount"; ConsumerRadChart.AddChartSeries(salesSeries1); salesSeries1.Items.Add(new ChartSeriesItem(double.Parse(dvAdCategories[i]["UserCount"].ToString()), dvAdCategories[i]["UserCount"].ToString())); salesSeries1.PlotArea.XAxis.AxisLabel.Appearance.RotationAngle = 45; ConsumerRadChart.PlotArea.XAxis.AddItem(dvAdCategories[i]["Name"].ToString()); ConsumerRadChart.PlotArea.XAxis.Items[itemsCount].TextBlock.Text = dvAdCategories[i]["Name"].ToString(); ConsumerRadChart.PlotArea.XAxis.Items[itemsCount].Appearance.RotationAngle = 45; ConsumerRadChart.PlotArea.XAxis.Items[itemsCount].Appearance.Position.AlignedPosition = Telerik.Charting.Styles.AlignedPositions.Bottom; ConsumerRadChart.PlotArea.XAxis.Items[itemsCount].TextBlock.Appearance.Position.Y = float.Parse("-30.00"); //ConsumerRadChart.PlotArea.XAxis.Items[itemsCount].TextBlock.Appearance.Position.AlignedPosition = Telerik.Charting.Styles.AlignedPositions.Bottom; ConsumerRadChart.PlotArea.XAxis.Items[itemsCount].TextBlock.Appearance.Position.Auto = true; itemsCount++; if (int.Parse(dvAdCategories[i]["UserCount"].ToString()) > maxYCount) maxYCount = int.Parse(dvAdCategories[i]["UserCount"].ToString()); } } //if (hashOfCategories.ContainsKey("Location Only")) //{ // ConsumerRadChart.PlotArea.XAxis.AddItem("Location Only"); // ConsumerRadChart.PlotArea.XAxis.Items[ConsumerRadChart.PlotArea.XAxis.Items.Count - 1].TextBlock.Text = "Location Only"; // salesSeries1 = new ChartSeries("Location Only", ChartSeriesType.Bar); // salesSeries1.Items.Clear(); // ChartSeriesItem item = new ChartSeriesItem(int.Parse(hashOfCategories["Location Only"].ToString()), // "Location Only"); // item.YValue = itemsCount; // salesSeries1.AddItem(item); // ConsumerRadChart.AddChartSeries(salesSeries1); // ConsumerRadChart.DataBind(); // if (int.Parse(hashOfCategories["Location Only"].ToString()) > maxYCount) // maxYCount = int.Parse(hashOfCategories["Location Only"].ToString()); //} //else //{ // //ChartSeriesItem item = new ChartSeriesItem(0, "Location Only"); // //item.XValue = ConsumerRadChart.PlotArea.XAxis.Items.Count; // //salesSeries1.Items.Add(item); //} ConsumerRadChart.PlotArea.XAxis.AxisLabel.TextBlock.Text = "Categories"; ConsumerRadChart.PlotArea.YAxis.AxisLabel.TextBlock.Text = "Number of Views"; ConsumerRadChart.Chart.PlotArea.XAxis.AxisLabel.TextBlock.Text = "Categories"; ConsumerRadChart.Chart.PlotArea.YAxis.AxisLabel.TextBlock.Text = "Number of Views"; ConsumerRadChart.Chart.PlotArea.XAxis.AxisLabel.Appearance.Dimensions.Height = 200; ConsumerRadChart.Chart.PlotArea.YAxis.LabelStep = 1; ConsumerRadChart.Chart.PlotArea.XAxis.LabelStep = 1; ConsumerRadChart.Chart.PlotArea.YAxis.AutoScale = false; ConsumerRadChart.Chart.PlotArea.YAxis.AxisMode = ChartYAxisMode.Normal; ConsumerRadChart.Chart.PlotArea.YAxis.MaxValue = maxYCount + 2; ConsumerRadChart.Chart.PlotArea.YAxis.Step = 1; ConsumerRadChart.Chart.PlotArea.Appearance.Dimensions.Margins.Right = 200; ConsumerRadChart.Chart.PlotArea.XAxis.AutoScale = false; //ConsumerRadChart.Chart.PlotArea.XAxis.MaxValue = dvAdCategories.Count + 2; //ConsumerRadChart.Chart.PlotArea.XAxis.Step = 1; //ConsumerRadChart.DataBind(); ChartPanel.Visible = true; }
public void PopulateCommissionBonusesChartXml() { // Establish our chart variables var xAxisLabels = new List<string>(); var seriesCollection = new List<ChartSeries>(); // Group our data to ensure that we show accurate data. var groupedData = CommissionBonusesDetails .GroupBy(c => new { c.BonusDescription, c.AcceptedDate }, (key, group) => new { key.BonusDescription, key.AcceptedDate, BonusAmount = group.Sum(a => a.BonusAmount) }); // Loop through each row and define our variables from the data foreach (var detail in groupedData) { // X-axis var monthDescription = detail.AcceptedDate.ToString("MMMM yyyy"); if (!xAxisLabels.Contains(monthDescription)) xAxisLabels.Add(monthDescription); // ConnectionStrings series var seriesName = detail.BonusDescription; var existingSeries = seriesCollection.Where(c => c.SeriesName == seriesName).Select(c => c).FirstOrDefault(); if (existingSeries == null) { var newSeries = new ChartSeries(); newSeries.SeriesName = seriesName; newSeries.Values.Add(detail.BonusAmount); seriesCollection.Add(newSeries); } else { existingSeries.Values.Add(detail.BonusAmount); } } // Compile the individual sections. Let's start with the categories. var categoriesXml = string.Empty; foreach (var label in xAxisLabels) { categoriesXml += string.Format(@"<category label='{0}' />", label); } categoriesXml = "<categories>" + categoriesXml + "</categories>"; // Next, compile the datasets var datasetXml = string.Empty; foreach (var series in seriesCollection) { // Dataset Values var datasetValuesJson = string.Empty; foreach (var value in series.Values) { datasetValuesJson += string.Format("<set value='{0}' />", value); } datasetXml += string.Format("<dataset seriesName='{0}'>", series.SeriesName) + datasetValuesJson + "</dataset>"; } // Compile the Json var json = new StringBuilder(); json.AppendFormat("<chart caption='' xAxisName='' yAxisName='Payouts' bgcolor='FFFFFF, FFFFFF' showBorder='0' showValues='0' labelDisplay='auto' showvalues='0' showSum='1' decimals='2' formatNumberScale='0' numberprefix='$'>{0}{1}</chart>", categoriesXml, datasetXml); // Set the Json to the corresponding property CommissionBonusesChartXml = json.ToString(); }
private void DrawChart(DataTable dt, int index) { try { ChartSeries series = new ChartSeries(); series.Type = ChartSeriesType.Line; chartControl1.PrimaryXAxis.TickLabelsDrawingMode = ChartAxisTickLabelDrawingMode.UserMode; chartControl1.PrimaryXAxis.Labels.Clear(); chartControl1.PrimaryXAxis.LabelRotate = true; chartControl1.PrimaryXAxis.LabelRotateAngle = 90; chartControl1.PrimaryXAxis.AutoSize = true; chartControl1.PrimaryXAxis.TickLabelsDrawingMode = ChartAxisTickLabelDrawingMode.UserMode; chartControl1.PrimaryYAxis.AutoSize = false; chartControl1.PrimaryYAxis.RangeType = ChartAxisRangeType.Set; chartControl1.PrimaryYAxis.RangeType = ChartAxisRangeType.Auto; Color[] color1 = new Color[] { Color.Yellow }; Color[] color2 = new Color[] { Color.DarkOrange }; if (index == MAXSERIES) { series.Style.Interior = new BrushInfo(GradientStyle.Horizontal, color1); series.Style.Border.Width = 3; } else { series.Style.Interior = new BrushInfo(GradientStyle.Horizontal, color2); series.Style.Border.Width = 1; } int i = 0; double minval = 0; double maxval = 0; foreach (DataRow dr in dt.Rows) { double d = Convert.ToDouble(dr["fb(t)"]); if (i == 0) { minval = d; maxval = d; } else { minval = d < minval ? d : minval; maxval = d > maxval ? d : maxval; } ChartAxisLabel label = new ChartAxisLabel( dr["Tenor"].ToString(), Color.White, new Font("Verdana", 8), i, "", ChartValueType.Custom); chartControl1.PrimaryXAxis.Labels.Add(label); series.Points.Add(i++, d); } //chartControl1.PrimaryYAxis.Range.Min = minval * .95; //chartControl1.PrimaryYAxis.Range.Max = maxval * 1.05; chartControl1.PrimaryYAxis.TickLabelsDrawingMode = ChartAxisTickLabelDrawingMode.BothUserAndAutomaticMode; chartControl1.PrimaryYAxis.DesiredIntervals = 7; txtTimestamp.Text = String.Format("Last Update: {0} {1}", DateTime.Now.ToShortDateString(), DateTime.Now.ToLongTimeString()); chartControl1.Series.Add(series); } catch (Exception ex) { Console.Write(ex); } }
void series_PrepareStyle(object sender, ChartPrepareStyleInfoEventArgs args) { //Specifying different Colors for data points using Prepare style event ChartSeries series = sender as ChartSeries; if (series != null) { if (this.chartControl1.Series[0].Type.ToString() == "Line") { if (args.Index == 0) { args.Style.Interior = new Syncfusion.Drawing.BrushInfo(Color.Red); } else if (args.Index == 1) { args.Style.Interior = new Syncfusion.Drawing.BrushInfo(Color.Green); } else if (args.Index == 2) { args.Style.Interior = new Syncfusion.Drawing.BrushInfo(Color.Blue); } else if (args.Index == 3) { args.Style.Interior = new Syncfusion.Drawing.BrushInfo(Color.Yellow); } else if (args.Index == 4) { args.Style.Interior = new Syncfusion.Drawing.BrushInfo(Color.Violet); } else if (args.Index == 5) { args.Style.Interior = new Syncfusion.Drawing.BrushInfo(Color.BlanchedAlmond); } else if (args.Index == 6) { args.Style.Interior = new Syncfusion.Drawing.BrushInfo(Color.Brown); } else if (args.Index == 7) { args.Style.Interior = new Syncfusion.Drawing.BrushInfo(Color.Aqua); } else if (args.Index == 8) { args.Style.Interior = new Syncfusion.Drawing.BrushInfo(Color.Red); } else if (args.Index == 9) { args.Style.Interior = new Syncfusion.Drawing.BrushInfo(Color.Green); } else if (args.Index == 10) { args.Style.Interior = new Syncfusion.Drawing.BrushInfo(Color.Blue); } else if (args.Index == 11) { args.Style.Interior = new Syncfusion.Drawing.BrushInfo(Color.Yellow); } else if (args.Index == 12) { args.Style.Interior = new Syncfusion.Drawing.BrushInfo(Color.Violet); } else if (args.Index == 13) { args.Style.Interior = new Syncfusion.Drawing.BrushInfo(Color.BlanchedAlmond); } else if (args.Index == 14) { args.Style.Interior = new Syncfusion.Drawing.BrushInfo(Color.Brown); } else if (args.Index == 15) { args.Style.Interior = new Syncfusion.Drawing.BrushInfo(Color.Aqua); } else if (args.Index == 16) { args.Style.Interior = new Syncfusion.Drawing.BrushInfo(Color.Red); } else if (args.Index == 17) { args.Style.Interior = new Syncfusion.Drawing.BrushInfo(Color.Green); } else if (args.Index == 18) { args.Style.Interior = new Syncfusion.Drawing.BrushInfo(Color.Blue); } else if (args.Index == 19) { args.Style.Interior = new Syncfusion.Drawing.BrushInfo(Color.Yellow); } else if (args.Index == 20) { args.Style.Interior = new Syncfusion.Drawing.BrushInfo(Color.Violet); } else if (args.Index == 21) { args.Style.Interior = new Syncfusion.Drawing.BrushInfo(Color.BlanchedAlmond); } else if (args.Index == 22) { args.Style.Interior = new Syncfusion.Drawing.BrushInfo(Color.Brown); } else if (args.Index == 23) { args.Style.Interior = new Syncfusion.Drawing.BrushInfo(Color.Aqua); } else if (args.Index == 24) { args.Style.Interior = new Syncfusion.Drawing.BrushInfo(Color.Red); } else if (args.Index == 25) { args.Style.Interior = new Syncfusion.Drawing.BrushInfo(Color.Green); } else if (args.Index == 26) { args.Style.Interior = new Syncfusion.Drawing.BrushInfo(Color.Blue); } else if (args.Index == 27) { args.Style.Interior = new Syncfusion.Drawing.BrushInfo(Color.Yellow); } else if (args.Index == 28) { args.Style.Interior = new Syncfusion.Drawing.BrushInfo(Color.Violet); } else if (args.Index == 29) { args.Style.Interior = new Syncfusion.Drawing.BrushInfo(Color.BlanchedAlmond); } else if (args.Index == 30) { args.Style.Interior = new Syncfusion.Drawing.BrushInfo(Color.Brown); } else if (args.Index == 31) { args.Style.Interior = new Syncfusion.Drawing.BrushInfo(Color.Red); } } } }
public DnnChartSeriesItem(ChartSeries parent) : base(parent) { }
/// <summary> /// Initializes chart data from access database. /// </summary> protected void InitializeChartData() { // The Access database string fileName = WinFormsUtils.FindFile(@"..\..\..\..\..\..\Common\Data\Chart", "ChartData.mdb"); string myConnectionString = "PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=" + fileName; // Define the database query string mySelectQuery = "SELECT City, ID, Population FROM Demographics"; // Create a database connection object using the connection string OleDbConnection myConnection = new OleDbConnection(myConnectionString); // Create a database command on the connection using query OleDbCommand myCommand = new OleDbCommand(mySelectQuery, myConnection); myCommand.Connection.Open(); // Create a database reader OleDbDataReader myReader = myCommand.ExecuteReader(CommandBehavior.CloseConnection); //Load the contents into a dataset. DataSet dataSet = ConvertToDataSet(myReader, "Demographics"); //Initializes new chart series. ChartSeries series = new ChartSeries(); series.Style.DisplayText = true; series.Style.TextOrientation = ChartTextOrientation.Up; series.Name = "Products"; ChartDataBindModel model = new ChartDataBindModel(dataSet, "Demographics"); model.XName = "ID"; model.YNames = new string[] { "Population" }; series.SeriesModel = model; this.xAxisLabelModel = new ChartDataBindAxisLabelModel(dataSet, "Demographics"); this.xAxisLabelModel.LabelName = "City"; //Adds the series to the ChartSeriesCollection. this.chartControl1.Series.Add(series); this.xAxisLabelModel.PositionIndex = 1; this.chartControl1.PrimaryXAxis.TickLabelsDrawingMode = ChartAxisTickLabelDrawingMode.UserMode; //this.chartControl1.PrimaryXAxis.AutoValueType = false; this.chartControl1.PrimaryXAxis.LabelsImpl = this.xAxisLabelModel; this.chartControl1.PrimaryXAxis.CustomLabelsParameter = ChartCustomLabelsParameter.Position; //Specifies the mode of displaying the label of the x-axis on intersection. this.chartControl1.PrimaryXAxis.LabelIntersectAction = ChartLabelIntersectAction.MultipleRows; //Specifies the column width mode for the Column Type chart. // this.chartControl1.ColumnWidthMode = ChartColumnWidthMode.RelativeWidthMode; // Close the reader and the connection myReader.Close(); myConnection.Close(); //Turns off the legend. this.chartControl1.Legend.Visible = false; this.chartControl1.Text = "Highest populated cities in the world"; // this.chartControl1.Series3D = true; this.chartControl1.Spacing = 20; }
private static IList<DataPoint> GetDataPoints(ChartSeries series) { PieSeries pieSeries = series as PieSeries; if (pieSeries != null) { return (IList<DataPoint>)pieSeries.DataPoints; } CategoricalSeries categoricalSeries = series as CategoricalSeries; if (categoricalSeries != null) { return categoricalSeries.DataPoints; } RangeSeries rangeSeries = series as RangeSeries; if (rangeSeries != null) { return rangeSeries.DataPoints; } OhlcSeries ohlcSeries = series as OhlcSeries; if (ohlcSeries != null) { return ohlcSeries.DataPoints; } ScatterPointSeries scatterPointSeries = (ScatterPointSeries)series; return scatterPointSeries.DataPoints; }
protected void fillKmChart(DateTime startdt, DateTime enddt) { cls_Reports rpt = new cls_Reports(); //try //{ DataTable selectedVehiles = getSelectedVehicles(); DataSet ds = rpt.GetKmReportForComparison(selectedVehiles, startdt, enddt); ChartTitle title = new ChartTitle(); ChartKm.ChartTitle.TextBlock.Text = "KMs Travelled from: " + startdt.Date.ToShortDateString() + " to:" + enddt.Date.ToShortDateString(); ChartKm.Appearance.BarOverlapPercent = 0; //ChartKm.Appearance.BarWidthPercent = 80; ChartKm.PlotArea.Appearance.Dimensions.Margins.Left = Telerik.Charting.Styles.Unit.Percentage(0); ChartKm.PlotArea.Appearance.Dimensions.Margins.Bottom = Telerik.Charting.Styles.Unit.Percentage(0); ChartKm.PlotArea.Appearance.Dimensions.Margins.Right = Telerik.Charting.Styles.Unit.Percentage(0); ChartKm.PlotArea.XAxis.Clear(); ChartKm.PlotArea.XAxis.AutoScale = true; ChartKm.SeriesOrientation = ChartSeriesOrientation.Horizontal; ChartKm.Series.Add(new ChartSeries("Carriers")); ChartKm.DataSource = ds.Tables[ds.Tables.Count - 1]; ChartKm.Series.Clear(); ChartKm.PlotArea.XAxis.DataLabelsColumn = "carrierName"; //for (int x = 0; x < ds.Tables[ds.Tables.Count-1].Rows.Count; x ++) //{ // ChartSeries series = new ChartSeries(ds.Tables[ds.Tables.Count - 1].Rows[x]["carrierName"].ToString()); // ChartKm.AddChartSeries(series); // ChartSeriesItem item = new ChartSeriesItem(Math.Round((double)ds.Tables[ds.Tables.Count - 1].Rows[x]["totalDistance"])); // item.Name = ds.Tables[ds.Tables.Count - 1].Rows[x]["carrierName"].ToString(); // ChartKm.Series[x].Items.Add(item); // ChartKm.serie //} ChartKm.DataBind(); ChartkmDayWise.ChartTitle.TextBlock.Text = "DateWise KMs Travelled from: " + startdt.Date.ToShortDateString() + " to:" + enddt.Date.ToShortDateString(); ChartkmDayWise.PlotArea.Appearance.Dimensions.Paddings.Left = Telerik.Charting.Styles.Unit.Percentage(0); ChartkmDayWise.PlotArea.Appearance.Dimensions.Paddings.Bottom = Telerik.Charting.Styles.Unit.Percentage(0); ChartkmDayWise.PlotArea.Appearance.Dimensions.Paddings.Right = Telerik.Charting.Styles.Unit.Percentage(0); ChartkmDayWise.Series.Clear(); ChartkmDayWise.PlotArea.XAxis.Clear(); ChartkmDayWise.PlotArea.XAxis.AutoScale = true; for (int x = 0; x < ds.Tables[1].Rows.Count; x++) { ChartkmDayWise.PlotArea.XAxis.AddItem(((DateTime)ds.Tables[1].Rows[x]["date"]).Date.ToShortDateString()); ChartkmDayWise.PlotArea.XAxis.DataLabelsColumn = "date"; } ChartSeries currentSeries = null; for (int x = 0; x < ds.Tables.Count - 1; x = x + 2) { currentSeries = ChartkmDayWise.CreateSeries(ds.Tables[x].Rows[0]["carrierName"].ToString(), System.Drawing.Color.Empty, System.Drawing.Color.Empty, ChartSeriesType.Line); currentSeries.Appearance.LabelAppearance.Shadow.Color = System.Drawing.Color.White; //Border.Color = System.Drawing.Color.Black; //currentSeries.Appearance.ShowLabels = false; } int m = 0; for (int l = 1; l < ds.Tables.Count - 1; l = l + 2) { for (int x = 0; x < ds.Tables[1].Rows.Count; x++) { ChartkmDayWise.Series[m].AddItem((double)(ds.Tables[l].Rows[x]["distance"])); } m++; } //ChartkmDayWise.ChartTitle.TextBlock.Text = "KMs Travelled from: " + startdt.Date.ToShortDateString() + " to:" + enddt.Date.ToShortDateString(); //ChartkmDayWise.Appearance.BarOverlapPercent = 0; //ChartkmDayWise.PlotArea.XAxis.Clear(); //ChartkmDayWise.PlotArea.XAxis.AutoScale = true; //ChartkmDayWise.SeriesOrientation = ChartSeriesOrientation.Vertical; //ChartkmDayWise.Series.Add(new ChartSeries("Carriers")); //ChartkmDayWise.DataSource = ds.Tables[ds.Tables.Count - 1]; //ChartkmDayWise.Series.Clear(); //ChartkmDayWise.PlotArea.XAxis.DataLabelsColumn = "carrierName"; //ChartkmDayWise.DataBind(); UpdatePanelChartKm.Update(); //} //catch (Exception e) //{ // cls_fileHandling fh = new cls_fileHandling(); // fh.appendToFile("~/logs/error.txt", DateTime.Now + ": " + e.Message); // fh.appendToFile("~/logs/stackTrace.txt", DateTime.Now + ": " + e.StackTrace); //} }
private static bool Run(Storyboard storyboard, ChartSeries series, Action completed = null) { if (storyboard.Children.Count == 0) { return false; } storyboard.Completed += (s, e) => { storyboard.Stop(); lock (locker) { int count = (int)series.GetValue(ChartAnimationUtilities.RunningAnimationsCountProperty); count--; series.SetValue(ChartAnimationUtilities.RunningAnimationsCountProperty, count); } if (completed != null) { completed(); } }; storyboard.Begin(); lock (locker) { int count = (int)series.GetValue(ChartAnimationUtilities.RunningAnimationsCountProperty); count++; series.SetValue(ChartAnimationUtilities.RunningAnimationsCountProperty, count); } return true; }
protected void InitializeChartData() { Random r = new Random(); string select1 = this.comboBox1.SelectedItem.ToString(); this.Size = new Size(478, 410); this.panel1.Visible = false; switch (select1) { case "Candle Chart": ChartSeries series1 = new ChartSeries(" Series 1", ChartSeriesType.Candle); series1.Text = series1.Name; DateTime date1 = new DateTime(2006, 2, 12); series1.Points.Add(date1.AddDays(1), 470, 200, 270, 400); series1.Points.Add(date1.AddDays(2), 520, 234, 321, 458); series1.Points.Add(date1.AddDays(3), 482, 193, 352, 302); series1.Points.Add(date1.AddDays(4), 457, 230, 300, 410); series1.Points.Add(date1.AddDays(5), 421, 150, 357, 200); series1.Points.Add(date1.AddDays(6), 475, 200, 300, 385); this.chartControl1.Series.Add(series1); this.chartControl1.Text = "Stock Price Summary"; this.chartControl1.PrimaryYAxis.Title = "Price $"; this.chartControl1.PrimaryXAxis.Title = "Week Day"; this.chartControl1.PrimaryXAxis.ValueType = ChartValueType.DateTime; this.chartControl1.PrimaryXAxis.RangeType = ChartAxisRangeType.Set; this.chartControl1.PrimaryXAxis.DateTimeRange = new ChartDateTimeRange(date1, date1.AddDays(7), 2, ChartDateTimeIntervalType.Days); this.chartControl1.PrimaryXAxis.DateTimeFormat = "MMM/dd"; this.chartControl1.Text = "Candle Chart"; break; case "HiLo Chart": ChartSeries series2 = new ChartSeries("NYSE", ChartSeriesType.HiLo); series2.Text = series2.Name; DateTime start = new DateTime(2006, 2, 20); series2.Points.Add(start.AddDays(0), 456, 214, 364, 386); series2.Points.Add(start.AddDays(1), 491, 234, 321, 378); series2.Points.Add(start.AddDays(2), 482, 193, 302, 352); series2.Points.Add(start.AddDays(3), 437, 243, 354, 391); series2.Points.Add(start.AddDays(4), 421, 223, 317, 367); series2.Points.Add(start.AddDays(5), 434, 263, 339, 385); series2.Points.Add(start.AddDays(6), 425, 245, 365, 396); series2.Points.Add(start.AddDays(7), 457, 234, 385, 398); series2.Points.Add(start.AddDays(8), 482, 267, 316, 389); series2.Points.Add(start.AddDays(9), 496, 285, 374, 399); ChartSeries series3 = new ChartSeries(" NASDAQ", ChartSeriesType.HiLo); series3.Text = series3.Name; series3.Points.Add(start.AddDays(0), 437, 263, 373, 412); series3.Points.Add(start.AddDays(1), 491, 243, 383, 391); series3.Points.Add(start.AddDays(2), 480, 290, 313, 421); series3.Points.Add(start.AddDays(3), 466, 215, 323, 452); series3.Points.Add(start.AddDays(4), 486, 243, 328, 415); series3.Points.Add(start.AddDays(5), 461, 263, 356, 371); series3.Points.Add(start.AddDays(6), 489, 273, 316, 399); series3.Points.Add(start.AddDays(7), 484, 285, 384, 415); series3.Points.Add(start.AddDays(8), 461, 266, 396, 423); series3.Points.Add(start.AddDays(9), 498, 278, 328, 433); this.chartControl1.Series.Add(series2); this.chartControl1.Series.Add(series3); this.chartControl1.PrimaryXAxis.RangeType = ChartAxisRangeType.Set; this.chartControl1.PrimaryXAxis.DateTimeRange = new ChartDateTimeRange(start.AddDays(-1), start.AddDays(10), 2, ChartDateTimeIntervalType.Days); this.chartControl1.PrimaryXAxis.ValueType = ChartValueType.DateTime; this.chartControl1.PrimaryXAxis.DateTimeFormat = "MMM/dd"; this.chartControl1.PrimaryXAxis.LabelIntersectAction = ChartLabelIntersectAction.Rotate; this.chartControl1.PrimaryYAxis.Title = "Price ($)"; this.chartControl1.Text = "HiLo Chart"; break; case "HiLo Open Close Chart": this.Size = new Size(478, 515); this.panel1.Visible = true; ChartSeries series4 = new ChartSeries("NYSE", ChartSeriesType.HiLoOpenClose); series4.Text = series4.Name; DateTime date = new DateTime(2006, 2, 13); series4.Points.Add(date, 456, 214, 364, 386); series4.Points.Add(date.AddDays(1), 491, 234, 321, 378); series4.Points.Add(date.AddDays(2), 482, 193, 302, 352); series4.Points.Add(date.AddDays(3), 437, 243, 354, 391); series4.Points.Add(date.AddDays(4), 421, 223, 317, 367); series4.Points.Add(date.AddDays(5), 434, 263, 339, 385); ChartSeries series5 = new ChartSeries("NASDAQ", ChartSeriesType.HiLoOpenClose); series5.Text = series5.Name; series5.Points.Add(date, 437, 263, 373, 412); series5.Points.Add(date.AddDays(1), 491, 243, 383, 391); series5.Points.Add(date.AddDays(2), 480, 290, 313, 421); series5.Points.Add(date.AddDays(3), 466, 215, 323, 452); series5.Points.Add(date.AddDays(4), 486, 243, 328, 415); series5.Points.Add(date.AddDays(5), 461, 263, 356, 371); this.chartControl1.Series.Add(series4); this.chartControl1.Series.Add(series5); this.chartControl1.PrimaryXAxis.ValueType = ChartValueType.DateTime; this.chartControl1.PrimaryXAxis.DateTimeFormat = "MMM/dd"; this.chartControl1.PrimaryXAxis.RangeType = ChartAxisRangeType.Set; this.chartControl1.PrimaryXAxis.DateTimeRange = new ChartDateTimeRange(date.AddDays(-1), date.AddDays(6), 2, ChartDateTimeIntervalType.Days); this.chartControl1.PrimaryXAxis.Title = "Week Days"; this.chartControl1.PrimaryYAxis.Title = "Price $"; this.chartControl1.Text = "HiLo Open Close Chart"; break; case "Kagi Chart": double[] points2 = { 25.25, 27.75, 29.0, 28.275, 27.75, 27.75, 27.275, 26.25, 25.75, 25.25, 26.25, 25.25, 24.5, 25.625, 25.5, 26.625, 26.275, 26.25, 26.875, 27.25, 26.875, 26.5, 27.125, 26.275, 25.875, 26.625, 27.125, 26.25, 27.0, 27.25, 27.5, 28.5, 29.5, 28.875, 28.5, 29.0, 28.5, 28.5, 29.0, 29.0, 40.0, 29.875, 29.875, 28.875, 28.5, 28.25, 28.875, 29.275, 29.275, 29.75, 29.5, 29.275, 28.5, 27.75, 27.625, 27.5, 26.5, 25.0, 26.625, 26.0, 25.875, 25.0, 25.25, 25.125, 25.05 }; DateTime current = new DateTime(2004, 01, 1); int numPoints = points2.Length; ChartSeries series = new ChartSeries("Series 1"); for (int j = 0; j < numPoints; j++) { series.Points.Add(current.AddDays(j * 5), points2[j]); } series.Type = ChartSeriesType.Kagi; series.Text = series.Name; series.ReversalAmount = 1.0; series.Style.Border.Width = 1; this.chartControl1.Series.Add(series); this.chartControl1.PrimaryXAxis.RangeType = ChartAxisRangeType.Set; this.chartControl1.PrimaryXAxis.DateTimeRange = new ChartDateTimeRange(current, current.AddMonths(13), 3, ChartDateTimeIntervalType.Months); this.chartControl1.PrimaryXAxis.DateTimeFormat = "MMM/dd"; this.chartControl1.Text = "Kagi Chart"; break; case "Point And Figure Chart": double[] points = { 35.250, 37.750, 39.000, 38.275, 37.750, 37.750, 37.275, 36.250, 35.750, 35.250, 36.250, 35.250, 34.500, 35.625, 35.500, 36.625, 36.275, 36.250, 36.875, 37.250, 36.875, 36.500, 37.125, 36.275, 35.875, 36.625, 27.125, 26.250, 27.000, 27.250, 37.500, 38.500, 39.500, 38.875, 38.500, 39.000, 38.500, 28.500, 29.000, 29.000, 40.000, 29.875, 29.875, 28.875, 28.500, 28.250, 28.875, 29.275, 29.275, 29.750, 29.500, 29.275, 28.500, 27.750, 27.625, 27.500, 26.500, 25.000, 26.625, 26.000, 25.875, 25.000, 25.250, 25.125, 25.050 }; double[] points1 = { 25, 27.500, 28.750, 28.025, 27.500, 27.500, 27.025, 26.250, 35.750, 35.250, 36.250, 35.250, 34.500, 25.625, 25.500, 26.625, 26.275, 26.250, 26.875, 27.250, 26.875, 26.500, 27.125, 26.275, 25.875, 26.625, 27.125, 26.250, 27.000, 27.250, 27.500, 38.500, 39.500, 38.875, 38.500, 39.000, 28.500, 28.500, 29.000, 29.000, 40.000, 29.875, 29.875, 28.875, 28.500, 28.250, 28.875, 29.275, 29.275, 29.750, 29.500, 29.275, 28.500, 27.750, 27.625, 27.500, 26.500, 25.000, 26.625, 26.000, 25.875, 25.000, 25.250, 25.125, 25.050 }; DateTime current1 = new DateTime(2004, 01, 1); int numPoints1 = points.Length; ChartSeries series7 = new ChartSeries("Series 1"); for (int j = 0; j < numPoints1; j++) { series7.Points.Add(current1.AddDays(j), new double[] { points[j], points1[j] }); } series7.Type = ChartSeriesType.PointAndFigure; series7.Text = series7.Name; series7.ReversalAmount = 0.0; this.chartControl1.Series.Add(series7); this.chartControl1.PrimaryXAxis.RangeType = ChartAxisRangeType.Set; this.chartControl1.PrimaryXAxis.DateTimeRange = new ChartDateTimeRange(current1, current1.AddDays(30), 10, ChartDateTimeIntervalType.Days); this.chartControl1.PrimaryXAxis.DateTimeFormat = "MMM/dd"; this.chartControl1.Text = "Point And Figure Chart"; break; case "Renko Chart": double[] points5 = { 25.250, 27.750, 29.000, 28.275, 27.750, 27.750, 27.275, 26.250, 25.750, 25.250, 26.250, 25.250, 24.500, 25.625, 25.500, 26.625, 26.275, 26.250, 26.875, 27.250, 26.875, 26.500, 27.125, 26.275, 25.875, 26.625, 27.125, 26.250, 27.000, 27.250, 27.500, 28.500, 29.500, 28.875, 28.500, 29.000, 28.500, 28.500, 29.000, 29.000, 40.000, 29.875, 29.875, 28.875, 28.500, 28.250, 28.875, 29.275, 29.275, 29.750, 29.500, 29.275, 28.500, 27.750, 27.625, 27.500, 26.500, 25.000, 26.625, 26.000, 25.875, 25.000, 25.250, 25.125, 25.050 }; DateTime date5 = new DateTime(2004, 1, 1); ChartSeries series11 = new ChartSeries("Series " + 0); for (int day = 0; day < points5.Length; day++) { series11.Points.Add(date5.AddDays(day), points5[day]); } series11.Type = ChartSeriesType.Renko; series11.ReversalAmount = 1; this.chartControl1.Series.Add(series11); this.chartControl1.PrimaryXAxis.ValueType = ChartValueType.DateTime; this.chartControl1.PrimaryXAxis.DateTimeFormat = "MMM/dd"; this.chartControl1.PrimaryXAxis.DateTimeRange = new ChartDateTimeRange(date5, date5.AddDays(60), 10, ChartDateTimeIntervalType.Days); this.chartControl1.Text = "Renko Chart"; this.chartControl1.PrimaryYAxis.Format = "$ #"; break; case "Three Line Break Chart": double[] points6 = { 25.250, 27.750, 29.000, 28.275, 27.750, 27.750, 27.275, 26.250, 25.750, 25.250, 26.250, 25.250, 24.500, 25.625, 25.500, 26.625, 26.275, 26.250, 26.875, 27.250, 26.875, 26.500, 27.125, 26.275, 25.875, 26.625, 27.125, 26.250, 27.000, 27.250, 27.500, 28.500, 29.500, 28.875, 28.500, 29.000, 28.500, 28.500, 29.000, 29.000, 40.000, 29.875, 29.875, 28.875, 28.500, 28.250, 28.875, 29.275, 29.275, 29.750, 29.500, 29.275, 28.500, 27.750, 27.625, 27.500, 26.500, 25.000, 26.625, 26.000, 25.875, 25.000, 25.250, 25.125, 25.050 }; DateTime dates = DateTime.Today.AddDays(-points6.Length); ChartSeries series8 = new ChartSeries("Series " + 0); for (int day = 0; day < points6.Length; day++) { series8.Points.Add(dates.AddDays(day), points6[day]); } series8.Type = ChartSeriesType.ThreeLineBreak; series8.ReversalAmount = 3.0; this.chartControl1.Text = "Three Line Break Chart"; this.chartControl1.PrimaryYAxis.Format = "$ #"; this.chartControl1.PrimaryXAxis.DateTimeRange = new ChartDateTimeRange(dates, dates.AddDays(60), 10, ChartDateTimeIntervalType.Days); this.chartControl1.PrimaryXAxis.DateTimeFormat = "MMM/dd"; this.chartControl1.Series.Add(series8); break; default: MessageBox.Show("Select any ONE Chart from the ListBox", "Error", MessageBoxButtons.OK); break; } }
private static bool TryRunSeriesAnimation(ChartSeries series) { if (!HasDataPointsInPlotRange(series)) { return false; } int count = (int)series.GetValue(ChartAnimationUtilities.RunningAnimationsCountProperty); if (count > 0) { return false; } bool started = false; CartesianSeries cartesianSeries = series as CartesianSeries; if (cartesianSeries != null) { CartesianAnimation animation = GetCartesianAnimation(cartesianSeries); if (animation == CartesianAnimation.Drop || animation == CartesianAnimation.DropWithDelay) { bool useDelay = animation == CartesianAnimation.DropWithDelay; started |= TryRunDropAnimtation(cartesianSeries, useDelay); } if (animation == CartesianAnimation.Rise || animation == CartesianAnimation.RiseWithDelay) { bool useDelay = animation == CartesianAnimation.RiseWithDelay; started |= TryRunRiseAnimtation(cartesianSeries, useDelay); } if (animation == CartesianAnimation.Stretch) { started |= TryRunStretchAnimtation(cartesianSeries); } } PieSeries pieSeries = series as PieSeries; if (pieSeries != null) { PieAnimation animation = GetPieAnimation(pieSeries); if (animation.HasFlag(PieAnimation.RadiusFactor)) { started |= TryRunRadiusFactorAnimtation(pieSeries); } if (animation.HasFlag(PieAnimation.Slice)) { started |= TryRunSliceAnimtation(pieSeries); } if (animation.HasFlag(PieAnimation.StartAngle)) { started |= TryRunStartAngleAnimtation(pieSeries); } if (animation.HasFlag(PieAnimation.SweepAngle)) { started |= TryRunSweepAngleAnimtation(pieSeries); } } return started; }
private void InitializeChartData() { this.chartControl1.Series.Clear(); InitChart(); Appearanceset(); ChartSeries ser = new ChartSeries("MultiPage"); ser.Points.Add(2, 45); ser.Points.Add(5, 100); ser.Points.Add(7, 210); ser.Points.Add(9, 110); ser.Points.Add(10, 150); ser.Points.Add(11, 180); ser.Points.Add(3, 45); ser.Points.Add(4, 100); ser.Points.Add(6, 210); ser.Points.Add(12, 110); ser.Points.Add(13, 150); ser.Points.Add(14, 180); ser.Points.Add(8, 45); ser.Points.Add(9, 100); ser.Points.Add(15, 210); ser.Points.Add(16, 110); ser.Points.Add(17, 150); ser.Points.Add(18, 180); ser.Points.Add(19, 100); ser.Points.Add(20, 210); ser.Points.Add(21, 110); ser.Points.Add(22, 150); ser.Points.Add(23, 180); ser.Points.Add(24, 150); ser.Points.Add(25, 180); ser.Points.Add(26, 210); ser.Points.Add(27, 110); ser.Points.Add(28, 150); ser.Points.Add(29, 180); ser.Points.Add(30, 150); ser.Points.Add(40, 210); ser.Points.Add(41, 110); ser.Points.Add(42, 150); ser.Points.Add(43, 180); ser.Points.Add(44, 150); ser.Points.Add(45, 180); ser.Points.Add(46, 210); ser.Points.Add(47, 110); ser.Points.Add(48, 150); ser.Points.Add(49, 180); ser.Points.Add(50, 150); ser.Points.Add(60, 210); ser.Points.Add(61, 110); ser.Points.Add(62, 150); ser.Points.Add(63, 180); ser.Points.Add(64, 150); ser.Points.Add(65, 180); ser.Points.Add(66, 210); ser.Points.Add(67, 110); ser.Points.Add(68, 150); ser.Points.Add(69, 180); ser.Points.Add(70, 150); ser.Points.Add(71, 110); ser.Points.Add(72, 150); ser.Points.Add(73, 180); ser.Points.Add(74, 150); ser.Points.Add(75, 180); ser.Points.Add(76, 210); ser.Points.Add(77, 110); ser.Points.Add(78, 150); ser.Points.Add(79, 180); ser.Points.Add(80, 150); this.chartControl1.Series.Add(ser); this.chartControl1.PrimaryXAxis.Range = new MinMaxInfo(0, 80, 5); ser.Type = ChartSeriesType.Column; this.chartControl1.Skins = Skins.Metro; this.chartControl1.Text = "Multiple Page Printing"; start = this.chartControl1.PrimaryXAxis.Range.Min; end = this.chartControl1.PrimaryXAxis.Range.Max; Intervel = this.chartControl1.PrimaryXAxis.Range.Interval; }
protected void BuildSeriesItem(ChartSeries series, double count, string label) { ChartSeriesItem item = new ChartSeriesItem(count, label); item.Label.TextBlock.Appearance.TextProperties.Color = Color.HotPink; item.Label.TextBlock.Appearance.TextProperties.Font = new Font("Arial", 12, FontStyle.Bold); series.Items.Add(item); }
protected void Page_Load(object sender, EventArgs e) { if (_levelID <= 0) return; List<AsyncPageTask> taskList = new List<AsyncPageTask>(); taskList.Add(new AsyncPageTask(GetStudentCounts)); taskList.Add(new AsyncPageTask(LoadDistrictParms)); foreach (AsyncPageTask page in taskList) { PageAsyncTask newTask = new PageAsyncTask(page.OnBegin, page.OnEnd, page.OnTimeout, "StudentSearch", true); Page.RegisterAsyncTask(newTask); } taskList = null; Page.ExecuteRegisteredAsyncTasks(); studentCountChart.DataSource = countData; studentCountChart.ChartTitle.Visible = false; studentCountChart.DataBind(); studentPieChartXmlHttpPanel.Value = ""; //Handle Legend Labels studentCountChart.Series.Clear(); var nSeries = new ChartSeries(); studentCountChart.PlotArea.Appearance.FillStyle.MainColor = System.Drawing.ColorTranslator.FromHtml("#FFFFFF"); studentCountChart.PlotArea.Appearance.FillStyle.FillType = FillType.Solid; studentCountChart.PlotArea.Appearance.Border.Color = System.Drawing.ColorTranslator.FromHtml("#FFFFFF"); studentCountChart.PlotArea.XAxis.Appearance.TextAppearance.TextProperties.Font = new System.Drawing.Font("Arial", 8); studentCountChart.PlotArea.YAxis.Appearance.TextAppearance.TextProperties.Font = new System.Drawing.Font("Arial", 8); studentCountChart.PlotArea.XAxis.Appearance.LabelAppearance.Position.AlignedPosition = AlignedPositions.TopRight; nSeries.Appearance.TextAppearance.TextProperties.Color = System.Drawing.Color.Black; nSeries.Appearance.TextAppearance.TextProperties.Font = new System.Drawing.Font("Arial", 8); nSeries.Appearance.LegendDisplayMode = ChartSeriesLegendDisplayMode.ItemLabels; var count = 0; //change to foreach for easier reading var gradeList = new List<string>(); foreach (DataRow dr in countData.Rows) { var value = DataIntegrity.ConvertToDouble(dr["StudentCount"]); var xValue = 0; switch (_level) { case EntityTypes.Teacher: xValue = dr.Table.Columns.Contains("ClassID") ? DataIntegrity.ConvertToInt(dr["ClassID"]) : 0; break; case EntityTypes.School: gradeList.Add(dr.Table.Columns.Contains("GradeNumber") ? dr["GradeNumber"].ToString() : string.Empty); xValue = gradeList.Count - 1; break; } var myItem = new ChartSeriesItem(value) { Name = dr["Grade"].ToString(), XValue = xValue }; myItem.Appearance.FillStyle.MainColor = System.Drawing.ColorTranslator.FromHtml(StyleController.GetPieChartColor(dr["Grade"].ToString(), count++)); ; myItem.Appearance.FillStyle.FillType = Telerik.Charting.Styles.FillType.Solid; if (value <= 0) myItem.Label.Visible = false; nSeries.Type = ChartSeriesType.Pie; nSeries.AddItem(myItem); /* var classIDValue = DataIntegrity.ConvertToDouble(dr["ClassID"]); var classItem = new ChartSeriesItem(classIDValue) { XValue = DataIntegrity.ConvertToDouble(dr["ClassID"]) }; classItem.Label.Visible = false;*/ /**************************************************************** * if user does not have Tab_Search_Staff permissions, then hide * the search tab and the radPageView associated with it. * *************************************************************/ if (!UserHasPermission(Permission.Tab_Search_Students)) { RadPageView2.Visible = false; foreach (Telerik.Web.UI.RadTab tab in RadTabStrip2.Tabs) { if (tab.Text == "Search") { tab.Visible = false; break; } } } /******************************************************************* * If user does not have Icon_ExpandedSearch_Students permissions, * then hide the "Advanced Search" link via its surrounding div tag. * ****************************************************************/ StudentSearch_DivAdvancedSearch.Visible = (UserHasPermission(Permission.Icon_ExpandedSearch_Students)); } SessionObject.StudentSearchParms.AddParm("GradeListFilter", gradeList); studentCountChart.Series.Add(nSeries); if (IsPostBack) { //Reloads previous search results if session object search text has a value if (studentsSearchText_smallTile.Value == "Search by last name..." && SessionObject.StudentSearchTxtPostBack_smallTile != null && SessionObject.StudentSearchTxtPostBack_smallTile.Length > 0) SearchStudentsByLastName_Click(null, null); return; } studentSearchMoreLink.Visible = false; studentsSearchTileGrid.Visible = false; enrollStudent.Visible = UserHasPermission(Base.Enums.Permission.Enroll_Student); addNewStudent.Visible = UserHasPermission(Base.Enums.Permission.Create_Student); }