private void ThongKe() { try { chartControl1.DataSource = null; chartControl1.Series.Clear(); if (ck_All.Checked) { lb_TongSoHinh.Text = (from w in Global.Db.tbl_Images select w.IdImage).Count() + ""; chartControl1.DataSource = Global.Db.ThongKeTienDoAll(); } else { lb_TongSoHinh.Text = (from w in Global.Db.tbl_Images where w.fBatchName == cbb_Batch.Text select w.IdImage).Count() + ""; chartControl1.DataSource = Global.Db.ThongKeTienDo(cbb_Batch.Text); } Series series1 = new Series("Series1", ViewType.Pie); series1.ArgumentScaleType = ScaleType.Qualitative; series1.ArgumentDataMember = "name"; series1.ValueScaleType = ScaleType.Numerical; series1.ValueDataMembers.AddRange("soluong"); chartControl1.Series.Add(series1); ((PiePointOptions)series1.Label.PointOptions).PointView = PointView.ArgumentAndValues; chartControl1.PaletteName = "Palette 1"; } catch (Exception) { // ignored } }
protected internal override void SetupXtraChartSeries(SCChart chart, DevExpress.XtraCharts.Series series, string name, string argument, string[] values) { base.SetupXtraChartSeries(chart, series, name, argument, values); if (series.View is CandleStickSeriesView view) { var reductionColor = Utils.ColorFromString(ReductionColor); if (reductionColor != System.Drawing.Color.Empty) { view.ReductionOptions.Color = reductionColor; view.ReductionOptions.Visible = true; } if (ReductionColorMode.HasValue) { view.ReductionOptions.ColorMode = (DevExpress.XtraCharts.ReductionColorMode)ReductionColorMode.Value; view.ReductionOptions.Visible = true; } if (ReductionFillMode.HasValue) { view.ReductionOptions.FillMode = (DevExpress.XtraCharts.CandleStickFillMode)ReductionFillMode.Value; view.ReductionOptions.Visible = true; } if (ReductionLevel.HasValue) { view.ReductionOptions.Level = (DevExpress.XtraCharts.StockLevel)ReductionLevel.Value; view.ReductionOptions.Visible = true; } } }
private void ChartSettiong_positiondata_realtime() { position_realtime_series = new DevExpress.XtraCharts.Series("위치", ViewType.Line); // position_series[0].LabelsVisibility = DevExpress.Utils.DefaultBoolean.True; //시리즈에 라벨 표시 // position_series[1].LabelsVisibility = DevExpress.Utils.DefaultBoolean.True; //ChartControl에 Series 추가 chartControl_path.Series.Add(position_realtime_series); chartControl_path.CrosshairEnabled = DefaultBoolean.False; XYDiagram diagram = (XYDiagram)chartControl_path.Diagram; diagram.AxisY.WholeRange.MaxValue = 10; // y축 최대값 diagram.AxisY.WholeRange.MinValue = -1; // y축 최소값 diagram.AxisY.WholeRange.Auto = false; // y축 범위 자동변경 설정 diagram.AxisX.WholeRange.SideMarginsValue = 0; ConstantLine zeroLine = new ConstantLine(); zeroLine.Color = Color.Green; zeroLine.AxisValue = 0; zeroLine.ShowInLegend = false; diagram.AxisY.ConstantLines.Add(zeroLine); // y값 0인 x축 생성 }
private void DrawBars() { this.chartControl1.Series.Clear(); foreach (string _yfield in AxisYFields) { Series _se = new DevExpress.XtraCharts.Series(); _se.View = new DevExpress.XtraCharts.PieSeriesView(); PieSeriesView _pv = _se.View as PieSeriesView; _pv.RuntimeExploding = true; PieSeriesLabel _ps = _se.Label as PieSeriesLabel; _ps.Position = PieSeriesLabelPosition.TwoColumns; PiePointOptions _piePointOptions = _se.PointOptions as PiePointOptions; _se.PointOptions.HiddenSerializableString = "to be serialized"; _se.PointOptions.PointView = DevExpress.XtraCharts.PointView.ArgumentAndValues; _piePointOptions.PercentOptions.ValueAsPercent = true; _piePointOptions.PercentOptions.PercentageAccuracy = dataPrecision + 2; _se.PointOptions.ValueNumericOptions.Format = DevExpress.XtraCharts.NumericFormat.Percent; _se.PointOptions.ValueNumericOptions.Precision = dataPrecision; _se.PointOptionsTypeName = "PiePointOptions"; _se.ValueDataMembers.Clear(); _se.DataSource = chartData; _se.ArgumentDataMember = AxisXField; _se.ValueDataMembers.AddRange(new string[] { _yfield }); _se.LegendText = AxisYTitle[_yfield]; this.chartControl1.Series.Add(_se); } int _rowCount = chartData.Rows.Count; }
private void DrawLines() { this.chartControl1.Series.Clear(); foreach (string _yfield in AxisYFields) { Series _se = new DevExpress.XtraCharts.Series(); _se.View = new DevExpress.XtraCharts.LineSeriesView(); _se.PointOptionsTypeName = "PointOptions"; _se.PointOptions.ValueNumericOptions.Format = DevExpress.XtraCharts.NumericFormat.Number; _se.PointOptions.ValueNumericOptions.Precision = DataPrecision; _se.ValueDataMembers.Clear(); _se.DataSource = chartData; _se.ArgumentDataMember = AxisXField; _se.ValueDataMembers.AddRange(new string[] { _yfield }); _se.LegendText = AxisYTitle[_yfield]; this.chartControl1.Series.Add(_se); } int _rowCount = chartData.Rows.Count; if (_rowCount > 4 && _rowCount <= 8) { XYDiagram _xyDiagram = this.chartControl1.Diagram as XYDiagram; _xyDiagram.AxisX.Label.Staggered = true; } if (_rowCount > 8) { XYDiagram _xyDiagram = this.chartControl1.Diagram as XYDiagram; _xyDiagram.AxisX.Label.Staggered = false; _xyDiagram.AxisX.Label.Angle = 45; } }
private void ChartSettiong_angluardata_result() { // position_series[0] = new DevExpress.XtraCharts.Series("위치", ViewType.Line); angluar_result_series = new DevExpress.XtraCharts.Series("앵글", ViewType.Line); // position_series[0].LabelsVisibility = DevExpress.Utils.DefaultBoolean.True; //시리즈에 라벨 표시 // position_series[1].LabelsVisibility = DevExpress.Utils.DefaultBoolean.True; //ChartControl에 Series 추가 chartControl2.Series.Add(angluar_result_series); // chartControl1.Series.Add(position_series[1]); chartControl2.CrosshairEnabled = DefaultBoolean.False; XYDiagram diagram = (XYDiagram)chartControl2.Diagram; diagram.AxisY.WholeRange.MaxValue = 3.14; // y축 최대값 diagram.AxisY.WholeRange.MinValue = -3.14; // y축 최소값 diagram.AxisY.WholeRange.Auto = false; // y축 범위 자동변경 설정 diagram.AxisX.WholeRange.SideMarginsValue = 0; ConstantLine zeroLine = new ConstantLine(); zeroLine.Color = Color.LightYellow; zeroLine.AxisValue = 0; zeroLine.ShowInLegend = false; diagram.AxisY.ConstantLines.Add(zeroLine); // y값 0인 x축 생성 }
private ChartControl getPieChartControl(string variableName, Dictionary <string, int> platformDict, int chartIndex) { ChartControl chartControl1 = new ChartControl(); // normalConfigure chartControl1.Dock = System.Windows.Forms.DockStyle.Top; chartControl1.EmptyChartText.Text = "\r\n"; chartControl1.Legend.Visible = false; chartControl1.Location = new System.Drawing.Point(0, 0); chartControl1.Name = "chartControl" + chartIndex; //configure pie series DevExpress.XtraCharts.Series series1 = new DevExpress.XtraCharts.Series(); series1.Label.PointOptions.PointView = PointView.ArgumentAndValues; series1.Label.PointOptions.ValueNumericOptions.Format = DevExpress.XtraCharts.NumericFormat.Percent; series1.Label.LineVisible = true; series1.LabelsVisibility = DevExpress.Utils.DefaultBoolean.True; series1.Name = "Series 1"; List <SeriesPoint> seriesPointLIst = new List <SeriesPoint>(); int pointIndex = 0; foreach (KeyValuePair <string, int> kv in platformDict) { DevExpress.XtraCharts.SeriesPoint seriesPoint = new DevExpress.XtraCharts.SeriesPoint(kv.Key, new object[] { ((object)(kv.Value)) }, pointIndex); seriesPointLIst.Add(seriesPoint); pointIndex++; } series1.Points.AddRange(seriesPointLIst.ToArray()); DevExpress.XtraCharts.PieSeriesView pieSeriesView1 = new DevExpress.XtraCharts.PieSeriesView(); pieSeriesView1.RuntimeExploding = false; series1.View = pieSeriesView1; // configure chart series array chartControl1.SeriesSerializable = new DevExpress.XtraCharts.Series[] { series1 }; DevExpress.XtraCharts.ChartTitle chartTitle1 = new DevExpress.XtraCharts.ChartTitle(); chartTitle1.Text = variableName; chartTitle1.TextColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0))))); chartControl1.Titles.AddRange(new DevExpress.XtraCharts.ChartTitle[] { chartTitle1 }); chartControl1.SeriesTemplate.Label.PointOptions.ValueNumericOptions.Format = DevExpress.XtraCharts.NumericFormat.General; chartControl1.SeriesTemplate.Label.LineVisible = true; //configure chart seriesTemplate View DevExpress.XtraCharts.PieSeriesView pieSeriesView2 = new DevExpress.XtraCharts.PieSeriesView(); pieSeriesView2.RuntimeExploding = false; chartControl1.SeriesTemplate.View = pieSeriesView2; chartControl1.Size = new System.Drawing.Size(500, 500); chartControl1.TabIndex = chartIndex; return(chartControl1); }
private void ThongKe() { try { chartControl1.DataSource = null; chartControl1.Series.Clear(); if (rb_All_DESO.Checked) { lb_soHinhUserGood.Text = (from w in Global.Db.tbl_Images join b in Global.Db.tbl_Batches on w.BatchID equals(b.BatchID) where b.CongKhaiBatch == true & w.FlagReadDeSo_Good == 0 select w).Count().ToString(); lb_soHinhUserNotGood.Text = (from w in Global.Db.tbl_Images where w.FlagReadDeSo_NotGood == 0 & w.BatchID == cbb_Batch.SelectedValue + "" select w).Count().ToString(); lb_TongSoHinh.Text = (from w in Global.Db.tbl_Images join b in Global.Db.tbl_Batches on w.BatchID equals(b.BatchID) where b.CongKhaiBatch == true select w).Count().ToString(); chartControl1.DataSource = Global.Db.ThongKeTienDoAll(); } else if (rb_deso.Checked) { lb_soHinhUserGood.Text = (from w in Global.Db.tbl_Images where w.FlagReadDeSo_Good == 0 & w.BatchID == cbb_Batch.SelectedValue + "" select w).Count().ToString(); lb_soHinhUserNotGood.Text = (from w in Global.Db.tbl_Images where w.FlagReadDeSo_NotGood == 0 & w.BatchID == cbb_Batch.SelectedValue + "" select w).Count().ToString(); lb_TongSoHinh.Text = (from w in Global.Db.tbl_Images join b in Global.Db.tbl_Batches on w.BatchID equals(b.BatchID) where w.BatchID == cbb_Batch.SelectedValue.ToString() select w.IDImage).Count() + ""; chartControl1.DataSource = Global.Db.ThongKeTienDo(cbb_Batch.SelectedValue + ""); } Series series1 = new Series("Series1", ViewType.Pie); series1.ArgumentScaleType = ScaleType.Qualitative; series1.ArgumentDataMember = "name"; series1.ValueScaleType = ScaleType.Numerical; series1.ValueDataMembers.AddRange("soluong"); chartControl1.Series.Add(series1); ((PiePointOptions)series1.Label.PointOptions).PointView = PointView.ArgumentAndValues; chartControl1.PaletteName = "Palette 1"; } catch (Exception) { // ignored } }
protected internal override void SetupXtraChartSeries(SCChart chart, DevExpress.XtraCharts.Series series, string name, string argument, string[] values) { base.SetupXtraChartSeries(chart, series, name, argument, values); if (series.View is SeriesViewColorEachSupportBase view) { view.ColorEach = ColorEach; } }
protected internal override void SetupXtraChartSeries(SCChart chart, DevExpress.XtraCharts.Series series, string name, string argument, string[] values) { base.SetupXtraChartSeries(chart, series, name, argument, values); if (series.View is StepAreaSeriesView view) { view.InvertedStep = InvertedStep; } }
private void StatForm_Load(object sender, EventArgs e) { _series = ultraChart1.Series[0]; _series.Name = statField; this.ChartKind.SelectedIndex = 0; this.ds = new DataSet("tableCol"); this.MakeData(); Splash.Close(); }
/// <summary> /// Handles the Load event of the frmStatistics control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="System.EventArgs"/> instance containing the event data.</param> /// 整理人:桂书丛 /// 整理时间:2013-03-04 private void frmStatistics_Load(object sender, EventArgs e) { myDataTable = myBUCMS_Stock.GetDateItems(); for (int j = 0; j < myDataTable.Rows.Count; j++) { mySeries = new DevExpress.XtraCharts.Series(); mySeries.Name = myDataTable.Rows[j]["Name"].ToString(); chartInGoodsDate.Series.Add(mySeries); } }
public void DrawSeriesChart(ChartControl chart, DataTable data, string title) { var series1 = new DevExpress.XtraCharts.Series(title, ViewType.Line); chart.Series.Add(series1); series1.DataSource = data; series1.ArgumentScaleType = ScaleType.DateTime; series1.ArgumentDataMember = "DP_Date"; series1.ValueDataMembers.AddRange(new string[] { "DailyReturn" }); }
private void CreateDifferenceChart(DevExpress.XtraCharts.ChartControl control, string ColumnName) { try { DataTable stable = ResultTable; ChartControl chartControl1 = control; double BegMeasure = stable.AsEnumerable().Min(x => Convert.ToDouble(x[EvConfig.IMUAlignmentMeasureField])); double endMeasure = stable.AsEnumerable().Max(x => Convert.ToDouble(x[EvConfig.IMUAlignmentMeasureField])); chartControl1.Series.Clear(); DevExpress.XtraCharts.Series series = new DevExpress.XtraCharts.Series(ColumnName, ViewType.RangeBar); series.ShowInLegend = false; foreach (DataRow r in stable.Rows) { double m; double z; if (r[ColumnName] == DBNull.Value) continue; m = Math.Round(Math.Abs(Convert.ToDouble(r[EvConfig.IMUAlignmentMeasureField])), 2); z = Math.Round(Math.Abs(Convert.ToDouble(r[ColumnName])), 2); series.Points.Add(new SeriesPoint(m, z,-1)); } // System.Windows.Forms.DataVisualization.Charting.Chart chart1 = new System.Windows.Forms.DataVisualization.Charting.Chart(); chartControl1.Series.Add(series); chartControl1.Titles.Clear(); ((XYDiagram)chartControl1.Diagram).SecondaryAxesY.Clear(); ((XYDiagram)chartControl1.Diagram).AxisX.VisualRange.SetMinMaxValues(BegMeasure, endMeasure); XYDiagram diagram = ((XYDiagram)chartControl1.Diagram); // Customize the appearance of the X-axis title. diagram.AxisX.Title.Visibility = DevExpress.Utils.DefaultBoolean.True; diagram.AxisX.Title.Alignment = StringAlignment.Center; diagram.AxisX.Title.Text = "匹配异常里程"; diagram.AxisX.Title.TextColor = Color.Black; diagram.AxisX.Title.EnableAntialiasing = DevExpress.Utils.DefaultBoolean.True; diagram.AxisX.Title.Font = new Font("Tahoma", 9, FontStyle.Regular); // Customize the appearance of the Y-axis title. diagram.AxisY.Title.Visibility = DevExpress.Utils.DefaultBoolean.True; diagram.AxisY.Title.Alignment = StringAlignment.Center; diagram.AxisY.Title.Text = ColumnName; diagram.AxisY.Title.TextColor = Color.Black; diagram.AxisY.Title.EnableAntialiasing = DevExpress.Utils.DefaultBoolean.True; diagram.AxisY.Title.Font = new Font("Tahoma", 9, FontStyle.Regular); //((XYDiagram)chartControl1.Diagram).AxisX.Title.Text = "对齐里程"; //((XYDiagram)chartControl1.Diagram).AxisY.Title.Text = "特征点里程差"; } catch (SystemException ex) { MessageBox.Show(ex.Message); } // return image; }
protected internal override void SetupXtraChartSeries(SCChart chart, DevExpress.XtraCharts.Series series, string name, string argument, string[] values) { base.SetupXtraChartSeries(chart, series, name, argument, values); if (series.View is Bar3DSeriesView view) { if (BarDepth.HasValue) { view.BarDepth = BarDepth.Value; } if (BarWidth.HasValue) { view.BarWidth = BarWidth.Value; } view.ColorEach = ColorEach; if (FillMode.HasValue) { view.FillStyle.FillMode = (DevExpress.XtraCharts.FillMode3D)FillMode.Value; switch (FillMode.Value) { case FillMode3D.Empty: break; case FillMode3D.Solid: break; case FillMode3D.Gradient: if (view.FillStyle.Options is RectangleGradientFillOptions gradientOptions) { var color2 = Utils.ColorFromString(Color2); if (color2 != System.Drawing.Color.Empty) { gradientOptions.Color2 = color2; } if (FillGradientMode.HasValue) { gradientOptions.GradientMode = (DevExpress.XtraCharts.RectangleGradientMode)FillGradientMode.Value; } } break; } } if (Model.HasValue) { view.Model = (DevExpress.XtraCharts.Bar3DModel)Model.Value; } if (HideFacet) { view.ShowFacet = false; } } }
protected internal override void SetupXtraChartSeries(SCChart chart, DevExpress.XtraCharts.Series series, string name, string argument, string[] values) { base.SetupXtraChartSeries(chart, series, name, argument, values); if (series.View is Area3DSeriesView view) { if (AreaWidth.HasValue) { view.AreaWidth = AreaWidth.Value; } } }
protected internal override void SetupXtraChartSeries(SCChart chart, DevExpress.XtraCharts.Series series, string name, string argument, string[] values) { base.SetupXtraChartSeries(chart, series, name, argument, values); if (series.View is FullStackedSplineAreaSeriesView view) { if (LineTensionPercent.HasValue) { view.LineTensionPercent = LineTensionPercent.Value; } } }
protected internal override void BoundDataChanged(SCChart chart, DevExpress.XtraCharts.Series series) { base.BoundDataChanged(chart, series); if (series.View is NestedDoughnutSeriesView view) { if (Group.HasValue) { view.Group = Group.Value; } } }
protected internal override void BoundDataChanged(SCChart chart, DevExpress.XtraCharts.Series series) { base.BoundDataChanged(chart, series); if (series.View is SideBySideFullStackedBarSeriesView view) { if (StackedGroup.HasValue) { view.StackedGroup = StackedGroup.Value; } } }
protected internal override void SetupXtraChartSeries(SCChart chart, DevExpress.XtraCharts.Series series, string name, string argument, string[] values) { base.SetupXtraChartSeries(chart, series, name, argument, values); if (series.View is DoughnutSeriesView viewDoughnut) { viewDoughnut.HoleRadiusPercent = HoleRadiusPercent; } else if (series.View is Doughnut3DSeriesView viewDoughnut3D) { viewDoughnut3D.HoleRadiusPercent = HoleRadiusPercent; } }
public SCChart AddSeries(ChartViewType viewType, string name, string argument, string[] values, Series.SeriesOptions options = null) { options ??= new Series.SeriesOptions(); var series = new DevExpress.XtraCharts.Series(name, (ViewType)viewType) { Tag = options }; options.SetupXtraChartSeries(this, series, name, argument, values); CurrentSeries = series; return(this); }
protected internal override void SetupXtraChartSeries(SCChart chart, DevExpress.XtraCharts.Series series, string name, string argument, string[] values) { base.SetupXtraChartSeries(chart, series, name, argument, values); if (series.View is SwiftPlotSeriesView view) { if (LineDashStyle.HasValue) { view.LineStyle.DashStyle = LineDashStyle.Value; } if (LineJoin.HasValue) { view.LineStyle.LineJoin = LineJoin.Value; } } }
protected internal override void SetupXtraChartSeries(SCChart chart, DevExpress.XtraCharts.Series series, string name, string argument, string[] values) { base.SetupXtraChartSeries(chart, series, name, argument, values); if (series.View is FinancialSeriesViewBase view) { if (LevelLineLength.HasValue && LevelLineLength.Value >= 0) { view.LevelLineLength = LevelLineLength.Value; } if (LineThickness.HasValue && LineThickness.Value >= 0) { view.LineThickness = LineThickness.Value; } } }
//曲线图chart服务 public async Task ShowChart_InData(double[][] ds) { #region 异步优化 ThreadPool.QueueUserWorkItem((obj) => { if (InvokeRequired && IsHandleCreated) { this.BeginInvoke(new Action <object>(delegate(object arg) { watch1.Start(); chartControl1.Series.Clear(); List <Series> seriesList = new List <Series>(); List <SeriesPoint> pointList = new List <SeriesPoint>(); //如果没有数据,重置chart数据源 if (ds == null || ds.Length == 0) { return; } DevExpress.XtraCharts.Series series = null; SeriesPoint point = null; int num = Convert.ToInt32(XmlHelper.getValue(InfoName, "number")); chartControl1.BeginInit(); for (int i = 0; i < num; i++) { series = new DevExpress.XtraCharts.Series(i.ToString(), ViewType.Spline); pointList.Clear(); for (int j = 0; j < ds.Length; j++) { point = new SeriesPoint(j + 1, ds[j][i]); pointList.Add(point); } series.Points.AddRange(pointList.ToArray()); seriesList.Add(series); } chartControl1.Series.AddRange(seriesList.ToArray()); chartControl1.EndInit(); watch1.Stop(); Console.WriteLine("Chart方法运行时长为:" + watch1.Elapsed.TotalMilliseconds); watch1.Reset(); }), new object[] { null }); } }); #endregion return; }
private void LoadBieuDoTheoNgay() { try { chartTheoNgay.Titles.Clear(); chartTheoNgay.Series.Clear(); DateTime TuNgay = deTuNgay.DateTime; DateTime DenNgay = deDenNgay.DateTime; listTheoThang = Retrofit.instance.BieuDoGhimTheoNgay(deTuNgay.DateTime, deDenNgay.DateTime); // Generate a data table and bind the chart to it. chartTheoNgay.DataSource = listTheoThang; for (int i = 0; i < listTheoThang.Count; i++) { DevExpress.XtraCharts.Series series1 = new DevExpress.XtraCharts.Series("Biểu đồ tổng hợp theo ngày", ViewType.Line); series1.DataSource = listTheoThang; series1.ArgumentDataMember = "TimeByDay"; series1.ValueDataMembers.AddRange(new string[] { "SoLuong" }); series1.Label.TextPattern = "{V}"; chartTheoNgay.Series.Add(series1); // Adjust the position of series labels. ((PointSeriesLabel)series1.Label).Position = PointLabelPosition.Center; series1.LabelsVisibility = DefaultBoolean.True; // Detect overlapping of series labels. ((SeriesLabelBase)series1.Label).ResolveOverlappingMode = ResolveOverlappingMode.Default; series1.LegendText = "Số lượng ghim"; series1.ArgumentScaleType = ScaleType.Numerical; ((LineSeriesView)series1.View).LineMarkerOptions.Kind = MarkerKind.Triangle; ((LineSeriesView)series1.View).LineStyle.DashStyle = DashStyle.Solid; break; } // Access the type-specific options of the diagram. ((XYDiagram)chartTheoNgay.Diagram).EnableAxisXZooming = true; // Hide the legend (if necessary). chartTheoNgay.Legend.Visibility = DevExpress.Utils.DefaultBoolean.True; chartTheoNgay.Dock = DockStyle.Fill; chartTheoNgay.Legend.Visibility = DevExpress.Utils.DefaultBoolean.True; } catch (Exception ex) { lg.Error(ex); } }
public void BindingDxChartControl(DevExpress.XtraCharts.ChartControl chartControl, List <ChartSeriesInfo> seriesList) { try { if (seriesList != null && seriesList.Count > 0) { foreach (ChartSeriesInfo seriesInfo in seriesList) { ViewType viewType = ViewType.Bar; try { viewType = (ViewType)Enum.Parse(typeof(ViewType), seriesInfo.ViewType, true); } catch { //ignore the exception } DevExpress.XtraCharts.Series newSeries = new DevExpress.XtraCharts.Series(seriesInfo.Name, viewType); if (!string.IsNullOrEmpty(seriesInfo.ArgumentDataMember)) { newSeries.ArgumentDataMember = seriesInfo.ArgumentDataMember; newSeries.ValueDataMembers.AddRange(seriesInfo.ValueDataMember); newSeries.ValueScaleType = (ScaleType)Enum.Parse(typeof(ScaleType), seriesInfo.ViewType); newSeries.View.Color = seriesInfo.Color; } else if (seriesInfo.SeriesPoints != null && seriesInfo.SeriesPoints.Count > 0) { foreach (ChartSeriesPointInfo point in seriesInfo.SeriesPoints) { newSeries.Points.Add(new SeriesPoint(point.Argument, point.ValueParams)); } } chartControl.Series.Add(newSeries); } } chartControl.RefreshData(); } catch (Exception ex) { MB.Util.TraceEx.Write(ex.StackTrace); throw new MB.Util.APPException(ex.Message, Util.APPMessageType.SysErrInfo); } }
public DevExpress.XtraCharts.Series GetSeries(string function, int low, int high) { var series = new DevExpress.XtraCharts.Series(function, ViewType.Line); var expression = CSharpScript.Create<double>( code: function, globalsType: typeof(ParameterX), options: ScriptOptions.Default.WithImports("System.Math") ); var runner = expression.CreateDelegate(); var globals = new ParameterX(); for (double i = low; i < high; i += 0.1) { series.Points.Add(new SeriesPoint(i, runner(new ParameterX() { x = i }).Result)); } ((LineSeriesView)series.View).MarkerVisibility = DevExpress.Utils.DefaultBoolean.False; return series; }
protected internal override void SetupXtraChartSeries(SCChart chart, DevExpress.XtraCharts.Series series, string name, string argument, string[] values) { base.SetupXtraChartSeries(chart, series, name, argument, values); if (series.View is XYDiagram3DSeriesViewBase view) { view.AggregateFunction = (DevExpress.XtraCharts.SeriesAggregateFunction)AggregateFunction; var color = Utils.ColorFromString(Color); if (color != System.Drawing.Color.Empty) { view.Color = color; } if (Transparency.HasValue) { view.Transparency = Transparency.Value; } } }
protected internal override void SetupXtraChartSeries(SCChart chart, DevExpress.XtraCharts.Series series, string name, string argument, string[] values) { base.SetupXtraChartSeries(chart, series, name, argument, values); if (series.View is not NestedDoughnutSeriesView viewDoughnut) { return; } if (InnerIndent.HasValue) { viewDoughnut.InnerIndent = InnerIndent.Value; } if (Weight.HasValue) { viewDoughnut.Weight = Weight.Value; } }
private void btn_Tron_Click(object sender, EventArgs e) { chart1.Series.Clear(); DevExpress.XtraCharts.Series ser = new DevExpress.XtraCharts.Series("ser", ViewType.Pie); for (int n = 0; n <= DanhSachCum.RowCount - 1; n++) { KMEDOIDS_Result.dr_View_Clustering = KMEDOIDS_Result.dt_View_Clustering.Rows[n]; string c = KMEDOIDS_Result.dr_View_Clustering["TyLe"].ToString().Substring(0, KMEDOIDS_Result.dr_View_Clustering["TyLe"].ToString().Length - 2); ser.Points.Add(new DevExpress.XtraCharts.SeriesPoint(Convert.ToDouble(KMEDOIDS_Result.dr_View_Clustering["TTCum"].ToString()), Convert.ToDouble(c))); } ser.LegendTextPattern = "Cụm {A}: {V}" + " %"; chart1.Series.Add(ser); //btn_Tron.Enabled = false; //btn_Cot.Enabled = true; }
private void btnGraphReport_Click(object sender, RoutedEventArgs e) { DashboardReportDesign.seriesList1.Clear(); DashboardReportDesign.seriesList2.Clear(); DashboardReportDesign.seriesList3.Clear(); using (var context = new DatabaseContext()) { List<DashboardReportData> dataList = new List<DashboardReportData>(); #region Leads per month var leads = (from c in context.Leads.ToList() select c).Distinct().ToList(); int LeadsMonth = 0; DateTime[] months = { DateTime.Now.AddMonths(-2), DateTime.Now.AddMonths(-1), DateTime.Now }; if (months[0].Month >= DateTime.Now.Month && months[1].Month >= DateTime.Now.Month) { months[0].AddYears(-1); months[1].AddYears(-1); } int countLeads = 0; DevExpress.XtraCharts.Series leadSeries = new DevExpress.XtraCharts.Series(); foreach (var month in months) { foreach (var lead in leads) { leadSeries = new DevExpress.XtraCharts.Series(month.ToString("MMM"), ViewType.StackedBar); if (Convert.ToDateTime(lead.DateAdded).Month == month.Month && Convert.ToDateTime(lead.DateAdded).Year == month.Year) { countLeads++; LeadsMonth++; } } leadSeries.Points.Add(new DevExpress.XtraCharts.SeriesPoint(month.ToString("MMM yyyy"), countLeads)); leadSeries.ArgumentScaleType = DevExpress.XtraCharts.ScaleType.Qualitative; DashboardReportDesign.seriesList1.Add(leadSeries); countLeads = 0; } #endregion #region Leads per year leads = (from c in context.Leads.ToList() select c).Distinct().ToList(); DateTime[] years = { DateTime.Now.AddYears(-2), DateTime.Now.AddYears(-1), DateTime.Now }; countLeads = 0; int LeadsYear = 0; DevExpress.XtraCharts.Series leadSeriesPerYear = new DevExpress.XtraCharts.Series(); foreach (var year in years) { foreach (var lead in leads) { leadSeriesPerYear = new DevExpress.XtraCharts.Series(year.ToString("yyyy"), ViewType.StackedBar); if (Convert.ToDateTime(lead.DateAdded).Year == year.Year) { countLeads++; LeadsYear++; } } leadSeriesPerYear.Points.Add(new DevExpress.XtraCharts.SeriesPoint(year.ToString("yyyy"), countLeads)); leadSeriesPerYear.ArgumentScaleType = DevExpress.XtraCharts.ScaleType.Qualitative; DashboardReportDesign.seriesList2.Add(leadSeriesPerYear); countLeads = 0; } #endregion #region Leads per Sales Stage leads = (from c in context.Leads.ToList() select c).Distinct().ToList(); var salesStages = context.SalesStages.ToList(); countLeads = 0; int LeadsStatus = 0; DevExpress.XtraCharts.Series leadSeriesPerStage = new DevExpress.XtraCharts.Series(); leadSeriesPerStage = new DevExpress.XtraCharts.Series("Sales Stages", ViewType.Doughnut); foreach (var salesStage in salesStages) { foreach (var lead in leads) { if (lead.Status == salesStage.SalesStageName) { countLeads++; LeadsStatus++; } } leadSeriesPerStage.Points.Add(new DevExpress.XtraCharts.SeriesPoint(salesStage.SalesStageName, countLeads)); leadSeriesPerStage.LegendTextPattern = "{A} : {V}"; countLeads = 0; } leadSeriesPerStage.ArgumentScaleType = DevExpress.XtraCharts.ScaleType.Qualitative; DashboardReportDesign.seriesList3.Add(leadSeriesPerStage); #endregion #region Overall Leads leads = context.Leads.ToList(); List<string> statuses = new List<string>() {"Engaged client", "Active", "Not active"}; countLeads = 0; int overAll = leads.Count(); string percent = ""; foreach (var status in statuses) { foreach (var item in leads) { var customerAccount = context.Customers.FirstOrDefault(c => c != null && c.LeadID == item.LeadID); if (item.IsActive == true && status == statuses[0] && customerAccount != null && item.Status == "New Customer") { countLeads++; } else if (item.IsActive == true && status == statuses[1] && customerAccount == null) { countLeads++; } else if (item.IsActive == false && status == statuses[2] && customerAccount == null) { countLeads++; } } Compute(countLeads, overAll, out percent); countLeads = 0; if (status == statuses[0]) { if (Convert.ToInt32(percent) < 10) { DashboardReportDesign.lblEngaged.Text = "0" + percent + "%"; } else { DashboardReportDesign.lblEngaged.Text = percent + "%"; } } else if (status == statuses[1]) { if (Convert.ToInt32(percent) < 10) { DashboardReportDesign.lblActive.Text = "0" + percent + "%"; } else { DashboardReportDesign.lblActive.Text = percent + "%"; } } else if (status == statuses[2]) { if (Convert.ToInt32(percent) < 10) { DashboardReportDesign.lblNotActive.Text = "0" + percent + "%"; } else { DashboardReportDesign.lblNotActive.Text = percent + "%"; } } } #endregion dataList.Add(new DashboardReportData { ReportHeader = "NSPIRE INC.", ReportTitle = "GRAPH REPORT as of " + DateTime.Now.ToString("MMMM d, yyyy"), TotalLeads = overAll, TotalLeadsMonth = LeadsMonth, TotalLeadsSalesStage = LeadsStatus, TotalLeadsYear = LeadsYear }); var report = new DashboardReportDesign() { DataSource = dataList.Distinct(), Name = "GRAPH REPORT as of " + DateTime.Now.ToString("MMMM d, yyyy") }; using (ReportPrintTool printTool = new ReportPrintTool(report)) { printTool.ShowRibbonPreviewDialog(); } } }
private void AddEventToChart(int virtualTime, events evt, int evtSignif, int yOfset) { bool isSessioForThisEvent = false; int i = 0; string moduleDescr = ResearchManager.GetEvtModuleDescription(evt.module); int startValue = yOfset+GetOfsetForEvent(evtSignif); if (evtSignif == 0 || evtSignif == 1) { if (yOfset == 0) { if (DEventsCount.Keys.Contains(moduleDescr)) { DEventsCount[moduleDescr]++; } else { DEventsCount.Add(moduleDescr, 1); } } else { if (DEventsCountCompare.Keys.Contains(moduleDescr)) { DEventsCountCompare[moduleDescr]++; } else { DEventsCountCompare.Add(moduleDescr, 1); } } } for (i = 0; i < WebChartControl1.Series.Count; i++ ) { if (WebChartControl1.Series[i].Name == moduleDescr) { WebChartControl1.Series[i].Points.Add(new DevExpress.XtraCharts.SeriesPoint(virtualTime,new double[]{startValue, startValue+1})); isSessioForThisEvent = true; //заполнение словаря break; } } if (!isSessioForThisEvent) { var s = new DevExpress.XtraCharts.Series(moduleDescr, DevExpress.XtraCharts.ViewType.SideBySideRangeBar); s.Points.Add(new DevExpress.XtraCharts.SeriesPoint(virtualTime, new double[] { startValue, startValue + 1 })); WebChartControl1.Series.Add(s);//SideBySideRangeBarSeriesView } }
public frmChartView(DataTable data, string type) { InitializeComponent(); if (data == null || data.Rows.Count == 0) { MessageBox.Show("Dữ liệu rỗng! Xin vui lòng chọn lại dữ liệu", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Warning); //this.Close(); return; } myInit(); switch (type) { case "ByDate": DevExpress.XtraCharts.Series series = new DevExpress.XtraCharts.Series(); for (int i = 0; i < data.Rows.Count; i++) { DevExpress.XtraCharts.SeriesPoint point = new DevExpress.XtraCharts.SeriesPoint(); point.Argument = Convert.ToString(data.Rows[i]["Ngayxuat"]); double[] temp = new double[1]; if (!(data.Rows[i]["ThanhTien"] is DBNull || (data.Rows[i]["ThanhTien"]).ToString() == "")) { temp[0] = Convert.ToDouble(data.Rows[i]["ThanhTien"]); } else temp[0] = 0; point.Values = temp; series.Points.Add(point); series.ArgumentScaleType = DevExpress.XtraCharts.ScaleType.DateTime; } chartControl1.Series.Add(series); chartControl1.Titles[0].Text = "Sản phẩm bán thống kê theo ngày"; break; case "ByMonth": DevExpress.XtraCharts.Series series1 = new DevExpress.XtraCharts.Series(); //series.LegendText = productName; for (int i = 0; i < data.Rows.Count; i++) { DevExpress.XtraCharts.SeriesPoint point = new DevExpress.XtraCharts.SeriesPoint(); point.Argument = Convert.ToString(data.Rows[i]["Ngayxuat"]); double[] temp = new double[1]; if (!(data.Rows[i]["ThanhTien"] is DBNull)) { temp[0] = Convert.ToDouble(data.Rows[i]["ThanhTien"]); } else temp[0] = 0; point.Values = temp; series1.Points.Add(point); } chartControl1.Series.Add(series1); chartControl1.Titles[0].Text = "Sản phẩm bán thống kê theo tháng"; break; default: break; } }