winform 繪圖控件 chart 實時曲線圖


 

實現思路:線程 while (true)循環,當集合滿了10個元素之后,每次再進行繪制 需要移除第一個點,添加新點到集合末尾。
這個chart控件十分的強大 網上資料也很多。我也只了解皮毛,剛好夠解決我的問題。所以沒啥寫的。
chart初始化:
 th = new Thread(GetData);
            chart1.Series[0].Name = strLinePh;
            chart1.Series[0].Color = Color.Red;
            chart1.Series.Add(strLinePress);
            chart1.Series[1].Color = Color.Blue;
           
            chart1.ChartAreas[0].AxisY2.ArrowStyle = AxisArrowStyle.Triangle;
            //chart1.ChartAreas[0].Axes[3].Interval = 50;
            chart1.Series[strLinePress].YAxisType = AxisType.Secondary;
            chart1.Titles.Add("PH 壓力 實時曲線");
            chart1.Legends[0].LegendStyle = LegendStyle.Row;
            chart1.Legends[0].Docking = Docking.Top;
            chart1.ChartAreas[0].AxisX2.LineColor = Color.Transparent;

            var cArea = chart1.ChartAreas[0];
            cArea.AxisY.LineColor = Color.Red;
            cArea.AxisY2.LineColor = Color.Blue;
            cArea.AxisY.Minimum = 0;
            cArea.AxisY.Maximum = 7;
            cArea.AxisY2.Minimum = -50;
            cArea.AxisY2.Maximum = 50;

            cArea.AxisX2.LineColor = Color.DarkGreen;
            cArea.AxisY2.MajorGrid.LineColor = Color.Transparent;
            cArea.AxisX.MajorGrid.LineColor = Color.Transparent;
            cArea.AxisX.ArrowStyle = AxisArrowStyle.Triangle;
            cArea.AxisY.ArrowStyle = AxisArrowStyle.Triangle;


            // Set series chart type
            chart1.Series[strLinePh].ChartType = SeriesChartType.Line;
            chart1.Series[strLinePress].ChartType = SeriesChartType.Line;

            // Set point labels
            chart1.Series[strLinePh].IsValueShownAsLabel = true;
            chart1.Series[strLinePress].IsValueShownAsLabel = true;

            // Enable X axis margin
            chart1.ChartAreas[0].AxisX.IsMarginVisible = true;

            chart1.Visible = false;

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM