Example #1
0
        private void toolStripButton1_Click(object sender, EventArgs e)
        {
            if (sjEnd.Value < sjBegin.Value)
            {
                MessageBox.Show("结束时间应该比开始时间大!");
                return;
            }
            int gaolu = 0;

            switch (this.toolStrip_gaolu.Text)
            {
            case "1#大烧":
                gaolu = 7;
                break;

            case "2#大烧":
                gaolu = 8;
                break;
            }

            c1Chart1.ChartGroups[0].ChartData.SeriesList.Clear();

            ChartData data = c1Chart1.ChartGroups[0].ChartData;
            ChartDataSeriesCollection series = data.SeriesList;



            double[] dy1;
            //double[] dy2;
            double max;
            double min;


            LegendEnviroment.loadCanShuSetting(gaolu, "烧结P", out dy1, out max, out min);
            c1Chart1.ChartArea.AxisY.Max = max;
            c1Chart1.ChartArea.AxisY.Min = min;



            Color[]  dyColor = new Color[] { Color.FromArgb(255, 192, 192), Color.FromArgb(255, 255, 192), Color.FromArgb(192, 255, 192) };
            string[] dyName  = new string[] { "过大", "正常", "过小" };


            //plot the student scores
            ChartDataSeries StuSeries = series.AddNewSeries();

            StuSeries.Label             = "烧结矿P趋势";
            StuSeries.LineStyle.Pattern = LinePatternEnum.Solid;
            StuSeries.LineStyle.Color   = Color.DarkBlue;
            StuSeries.SymbolStyle.Shape = SymbolShapeEnum.Star;
            StuSeries.SymbolStyle.Color = Color.DarkRed;

            c1Chart1.ChartArea.AxisX.AnnoFormat         = FormatEnum.DateManual;
            c1Chart1.ChartArea.AxisX.AnnoFormatString   = "MM/dd HH:mm";
            c1Chart1.ChartArea.AxisX.AnnotationRotation = 0;

            DateTime[] sT;
            double[]   s;

            LegendEnviroment.loadshaojie(gaolu, "P", sjBegin.Value, sjEnd.Value, out sT, out s);
            StuSeries.X.CopyDataIn(sT);
            StuSeries.Y.CopyDataIn(s);
            StuSeries = null;


            DateTime[] ax = new DateTime[] { sjBegin.Value, sjEnd.Value };

            for (int i = 0; i < 2; i++)
            {
                double[] ay1 = new double[] { dy1[i], dy1[i] };
                StuSeries                   = series.AddNewSeries();
                StuSeries.Label             = i.ToString();
                StuSeries.LineStyle.Pattern = LinePatternEnum.Solid;
                StuSeries.LineStyle.Color   = Color.Black;
                StuSeries.SymbolStyle.Shape = SymbolShapeEnum.None;
                StuSeries.SymbolStyle.Color = Color.DarkRed;
                StuSeries.X.CopyDataIn(ax);
                StuSeries.Y.CopyDataIn(ay1);
                StuSeries = null;
            }



            double[] zoney = new double[] { dy1[0], dy1[1] };
            // Add and show the alarm zones
            AlarmZonesCollection zones = c1Chart1.ChartArea.PlotArea.AlarmZones;

            zones.Clear();
            for (int i = 0; i < 3; i++)
            {
                AlarmZone zone = zones.AddNewZone();

                zone.Name      = dyName[i];
                zone.BackColor = dyColor[i];

                if (i == 0)
                {
                    zone.UpperExtent = c1Chart1.ChartArea.AxisY.Max;
                }
                else
                {
                    zone.UpperExtent = zones[i - 1].LowerExtent;
                }

                if (i == 2)
                {
                    zone.LowerExtent = c1Chart1.ChartArea.AxisY.Min;
                }
                else
                {
                    zone.LowerExtent = zoney[i];
                }

                zone.Visible = true;
            }
        }
Example #2
0
        private void toolStripButton1_Click(object sender, EventArgs e)
        {
            if (r1.RadioChecked && (sjEnd.Value < sjBegin.Value))
            {
                MessageBox.Show("结束时间应该比开始时间大!");
                return;
            }

            c1Chart1.ChartGroups[0].ChartData.SeriesList.Clear();
            int gaolu = 0;

            switch (this.toolStrip_gaolu.Text)
            {
            case "1高炉":
                gaolu = 1;
                break;

            case "2高炉":
                gaolu = 2;
                break;

            case "3高炉":
                gaolu = 3;
                break;

            case "4高炉":
                gaolu = 4;
                break;

            case "5高炉":
                gaolu = 5;
                break;

            case "6高炉":
                gaolu = 6;
                break;
            }

            // Add the data
            ChartData data = c1Chart1.ChartGroups[0].ChartData;
            ChartDataSeriesCollection series = data.SeriesList;

            double[] dy;
            double   max;
            double   min;

            LegendEnviroment.loadRSetting(out dy, out max, out min);
            c1Chart1.ChartArea.AxisY.Max = max;
            c1Chart1.ChartArea.AxisY.Min = min;

            Color[]  dyColor = new Color[] { Color.FromArgb(255, 192, 192), Color.FromArgb(255, 255, 192), Color.FromArgb(192, 255, 192), Color.FromArgb(255, 255, 192), Color.FromArgb(255, 192, 192) };
            string[] dyName  = new string[] { "过大", "有点大", "正常", "有点小", "过小" };


            //plot the student scores
            ChartDataSeries StuSeries = series.AddNewSeries();

            StuSeries.Label             = "Si(炉温)趋势";
            StuSeries.LineStyle.Pattern = LinePatternEnum.Solid;
            StuSeries.LineStyle.Color   = Color.DarkBlue;
            StuSeries.SymbolStyle.Shape = SymbolShapeEnum.Star;
            StuSeries.SymbolStyle.Color = Color.DarkRed;

            if (r1.RadioChecked)
            {
                c1Chart1.ChartArea.AxisX.AnnoFormat         = FormatEnum.DateManual;
                c1Chart1.ChartArea.AxisX.AnnoFormatString   = "MM/dd HH:mm";
                c1Chart1.ChartArea.AxisX.AnnotationRotation = 0;
                DateTime[] siT;
                double[]   si;
                LegendEnviroment.loadR(gaolu, sjBegin.Value, sjEnd.Value, out siT, out si);
                StuSeries.X.CopyDataIn(siT);
                StuSeries.Y.CopyDataIn(si);
                StuSeries = null;

                c1Chart1.Footer.Text = this.toolStrip_gaolu.Text + "  " + this.sjBegin.Text + "  ----  " + this.sjEnd.Text;

                DateTime[] ax = new DateTime[] { sjBegin.Value, sjEnd.Value };

                for (int i = 0; i < 4; i++)
                {
                    double[] ay1 = new double[] { dy[i], dy[i] };
                    StuSeries                   = series.AddNewSeries();
                    StuSeries.Label             = "最大值";
                    StuSeries.LineStyle.Pattern = LinePatternEnum.Solid;
                    StuSeries.LineStyle.Color   = Color.Black;
                    StuSeries.SymbolStyle.Shape = SymbolShapeEnum.None;
                    StuSeries.SymbolStyle.Color = Color.DarkRed;
                    StuSeries.X.CopyDataIn(ax);
                    StuSeries.Y.CopyDataIn(ay1);
                    StuSeries = null;
                }
            }
            else
            {
                c1Chart1.ChartArea.AxisX.AnnoFormat         = FormatEnum.NumericGeneral;
                c1Chart1.ChartArea.AxisX.AnnotationRotation = 90;
                long[]   siLuci;
                double[] si;
                LegendEnviroment.loadR(gaolu, toolStrip_Luci1.Text, toolStrip_Luci2.Text, out siLuci, out si);
                StuSeries.X.CopyDataIn(siLuci);
                StuSeries.Y.CopyDataIn(si);
                StuSeries = null;

                c1Chart1.Footer.Text = this.toolStrip_gaolu.Text + "  " + this.toolStrip_Luci1.Text + "  ----  " + this.toolStrip_Luci2.Text;

                long[] ax = new long[] { Convert.ToInt64(toolStrip_Luci1.Text), Convert.ToInt64(toolStrip_Luci2.Text) };

                for (int i = 0; i < 4; i++)
                {
                    double[] ay1 = new double[] { dy[i], dy[i] };
                    StuSeries                   = series.AddNewSeries();
                    StuSeries.Label             = "最大值";
                    StuSeries.LineStyle.Pattern = LinePatternEnum.Solid;
                    StuSeries.LineStyle.Color   = Color.Black;
                    StuSeries.SymbolStyle.Shape = SymbolShapeEnum.None;
                    StuSeries.SymbolStyle.Color = Color.DarkRed;
                    StuSeries.X.CopyDataIn(ax);
                    StuSeries.Y.CopyDataIn(ay1);
                    StuSeries = null;
                }
            }

            // Add and show the alarm zones
            AlarmZonesCollection zones = c1Chart1.ChartArea.PlotArea.AlarmZones;

            zones.Clear();
            for (int i = 0; i < 5; i++)
            {
                AlarmZone zone = zones.AddNewZone();

                zone.Name      = dyName[i];
                zone.BackColor = dyColor[i];

                if (i == 0)
                {
                    zone.UpperExtent = c1Chart1.ChartArea.AxisY.Max;
                }
                else
                {
                    zone.UpperExtent = zones[i - 1].LowerExtent;
                }

                if (i == 4)
                {
                    zone.LowerExtent = c1Chart1.ChartArea.AxisY.Min;
                }
                else
                {
                    zone.LowerExtent = dy[i];
                }

                zone.Visible = true;
            }
        }
Example #3
0
        private void toolStripButton1_Click(object sender, EventArgs e)
        {
            if (sjEnd.Value < sjBegin.Value)
            {
                MessageBox.Show("结束时间应该比开始时间大!");
                return;
            }

            c1Chart1.ChartGroups[0].ChartData.SeriesList.Clear();

            int gaolu = 0;

            switch (this.toolStrip_gaolu.Text)
            {
            case "1高炉":
                gaolu = 1;
                break;

            case "2高炉":
                gaolu = 2;
                break;

            case "3高炉":
                gaolu = 3;
                break;

            case "4高炉":
                gaolu = 4;
                break;

            case "5高炉":
                gaolu = 5;
                break;

            case "6高炉":
                gaolu = 6;
                break;
            }

            DateTime[] shengyureT;
            double[]   shengyuere;
            DateTime[] yurebiliT;
            double[]   yurebili;
            DateTime[] siT;
            double[]   si;

            LegendEnviroment.loadSYR(gaolu, sjBegin.Value, sjEnd.Value, out shengyureT, out shengyuere, out yurebiliT, out yurebili, out siT, out si);

            // Add the data
            ChartData data = c1Chart1.ChartGroups[0].ChartData;
            ChartDataSeriesCollection series = data.SeriesList;

            c1Chart1.ChartArea.AxisX.AnnoFormat         = FormatEnum.DateManual;
            c1Chart1.ChartArea.AxisX.AnnoFormatString   = "MM/dd HH:mm";
            c1Chart1.ChartArea.AxisX.AnnotationRotation = 0;

            //plot the student scores
            ChartDataSeries StuSeries = series.AddNewSeries();

            StuSeries.Label             = "剩余热";
            StuSeries.LineStyle.Pattern = LinePatternEnum.Solid;
            StuSeries.LineStyle.Color   = Color.DarkGoldenrod;
            StuSeries.SymbolStyle.Shape = SymbolShapeEnum.None;
            StuSeries.X.CopyDataIn(shengyureT);
            StuSeries.Y.CopyDataIn(shengyuere);
            StuSeries = null;

            //plot the student scores
            StuSeries                   = series.AddNewSeries();
            StuSeries.Label             = "余热比例";
            StuSeries.LineStyle.Pattern = LinePatternEnum.Solid;
            StuSeries.LineStyle.Color   = Color.DarkGray;
            StuSeries.SymbolStyle.Shape = SymbolShapeEnum.None;
            StuSeries.X.CopyDataIn(yurebiliT);
            StuSeries.Y.CopyDataIn(yurebili);
            StuSeries = null;

            //plot the student scores
            StuSeries                   = series.AddNewSeries();
            StuSeries.Label             = "炉温(Si)";
            StuSeries.LineStyle.Pattern = LinePatternEnum.Solid;
            StuSeries.LineStyle.Color   = Color.Red;
            StuSeries.SymbolStyle.Shape = SymbolShapeEnum.None;
            StuSeries.X.CopyDataIn(siT);
            StuSeries.Y.CopyDataIn(si);
            StuSeries = null;
        }