ChartControl控件的使用

核心代码

 private void ShowSpineChart()
        {
            spineChart = new ChartControl();
            AddLine(listLightDateConllection[0], listLightDateConllection.RotationDirection);//一定要先加一条线

            XYDiagram diagram = (XYDiagram)spineChart.Diagram;//坐标系设定
            diagram.AxisX.Title.Visibility = DevExpress.Utils.DefaultBoolean.True;
            diagram.AxisX.Title.Alignment = StringAlignment.Center;
            diagram.AxisX.Title.Text = "角度";
            diagram.AxisX.Title.EnableAntialiasing = DevExpress.Utils.DefaultBoolean.True;
            diagram.AxisX.Title.Font = new Font("Tahoma", 12, FontStyle.Bold);

            diagram.AxisY.Title.Visibility = DevExpress.Utils.DefaultBoolean.True;
            diagram.AxisY.Title.Alignment = StringAlignment.Center;
            diagram.AxisY.Title.Text = "能量(单位mw/sr)";
            diagram.AxisY.Title.EnableAntialiasing = DevExpress.Utils.DefaultBoolean.True;
            diagram.AxisY.Title.Font = new Font("Tahoma", 12, FontStyle.Bold);

            ((XYDiagram)spineChart.Diagram).EnableAxisXZooming = true;//可使用鼠标放大缩小
            ((XYDiagram)spineChart.Diagram).EnableAxisXScrolling = true;
            ((XYDiagram)spineChart.Diagram).EnableAxisYZooming = true;
            ((XYDiagram)spineChart.Diagram).EnableAxisYScrolling = true;
            spineChart.Titles.Add(new ChartTitle());
            spineChart.Titles[0].Text = "角度能量图";
            spineChart.Titles[0].Font = new Font("Tahoma", 14, FontStyle.Bold);
            spineChart.Dock = DockStyle.Fill;
            this.panel1.Controls.Add(spineChart);
        }

上面是画表格

private void btnShowAllLine_Click(object sender, EventArgs e)
        {
            PanleShowHint(true);
            this.Invalidate();
            SeriesClear();      
            SpendUpChart(true);      
            AddLineRange();     
            SpendUpChart(false);
            PanleShowHint(false);
        }

禁用绘图,避免ChartControl大数据加载缓慢,有一定作用

private Series MakeLineSerie(ListLightDate ArrLightDate, RotationDirectionEnum rotationDirection)
        {
            bool isLongitude = rotationDirection == RotationDirectionEnum.Longitude ? true : false;
            string lineName = ArrLightDate.Name;
            Series series = new Series(lineName, ViewType.Spline);
            foreach (LightDate item in ArrLightDate)
            {
                series.Points.Add(new SeriesPoint(
                    isLongitude ? item.NameLongitude : item.NameDimensionality
                    , item.Illumination));
            }
            return series;
        }

添加线条

看效果
在这里插入图片描述
在这里插入图片描述

工程:https://download.csdn.net/download/bayinglong/10800129

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值