Exemplo n.º 1
0
 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;
                }
            }
        }
Exemplo n.º 3
0
        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축 생성
        }
Exemplo n.º 4
0
        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;
        }
Exemplo n.º 5
0
        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;
            }
        }
Exemplo n.º 6
0
        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축 생성
        }
Exemplo n.º 7
0
        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);
        }
Exemplo n.º 8
0
        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;
            }
        }
Exemplo n.º 10
0
        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;
            }
        }
Exemplo n.º 11
0
 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();
 }
Exemplo n.º 12
0
 /// <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);
     }
 }
Exemplo n.º 13
0
        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;
        }
Exemplo n.º 15
0
        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;
                }
            }
        }
Exemplo n.º 18
0
        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;
                }
            }
        }
Exemplo n.º 19
0
        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;
            }
        }
Exemplo n.º 21
0
        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);
        }
Exemplo n.º 22
0
        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;
                }
            }
        }
Exemplo n.º 23
0
        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;
                }
            }
        }
Exemplo n.º 24
0
        //曲线图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;
        }
Exemplo n.º 25
0
        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);
            }
        }
Exemplo n.º 26
0
        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);
            }
        }
Exemplo n.º 27
0
        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;
                }
            }
        }
Exemplo n.º 29
0
        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;
            }
        }
Exemplo n.º 30
0
        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;
        }
Exemplo n.º 31
0
        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();
                }
            }
        }
Exemplo n.º 32
0
        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
            }
        }
Exemplo n.º 33
0
 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;
     }
 }