91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

winform怎么畫實時曲線圖

小億
376
2023-12-07 03:10:01
欄目: 智能運維

您可以使用Chart控件來繪制實時曲線圖。以下是一個簡單的示例代碼:

首先,在您的WinForms窗體中添加一個Chart控件。

然后,使用以下代碼在Form_Load事件中初始化Chart控件:

private void Form1_Load(object sender, EventArgs e)
{
    // 設置Chart控件的屬性
    chart1.ChartAreas.Add("area");
    chart1.Series.Add("series");
    chart1.Series["series"].ChartType = SeriesChartType.Line;
    chart1.Series["series"].Color = Color.Red;
    chart1.Series["series"].BorderWidth = 2;
    chart1.Series["series"].XValueType = ChartValueType.Time;
    chart1.ChartAreas["area"].AxisX.LabelStyle.Format = "HH:mm:ss";
    chart1.ChartAreas["area"].AxisX.IntervalType = DateTimeIntervalType.Seconds;
    chart1.ChartAreas["area"].AxisX.Interval = 1;
    chart1.ChartAreas["area"].AxisX.ScaleView.Size = 5;

    // 啟動一個定時器,每隔一段時間更新圖表
    timer1.Interval = 1000; // 每秒更新一次
    timer1.Start();
}

接下來,使用以下代碼在Timer_Tick事件中更新圖表:

private void timer1_Tick(object sender, EventArgs e)
{
    // 生成一個隨機數據點
    double yValue = new Random().NextDouble() * 100;
    DateTime xValue = DateTime.Now;

    // 添加數據點到Series
    chart1.Series["series"].Points.AddXY(xValue, yValue);

    // 刪除超出X軸范圍的數據點
    while (chart1.Series["series"].Points.Count > 0 && chart1.Series["series"].Points[0].XValue < xValue.AddSeconds(-5).ToOADate())
    {
        chart1.Series["series"].Points.RemoveAt(0);
    }

    // 設置X軸的視圖范圍
    chart1.ChartAreas["area"].AxisX.ScaleView.Position = xValue.AddSeconds(-5).ToOADate();
    chart1.ChartAreas["area"].AxisX.ScaleView.Size = 5;
}

最后,記得在Form_FormClosing事件中停止定時器:

private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
    timer1.Stop();
}

這樣,您就可以實時繪制曲線圖了。每秒鐘,會生成一個隨機的數據點,并添加到Series中。同時,會保持X軸的視圖范圍在最近5秒內的數據。

0
班玛县| 澄迈县| 荆门市| 怀远县| 乐陵市| 兴隆县| 西乌| 临泉县| 桃园市| 桂东县| 繁昌县| 资阳市| 屏边| 赣州市| 美姑县| 高清| 龙南县| 宣恩县| 犍为县| 碌曲县| 昭苏县| 花莲市| 元江| 察隅县| 岑巩县| 水城县| 永定县| 余江县| 通化县| 大埔区| 柳州市| 栖霞市| 文安县| 乐山市| 怀来县| 大荔县| 金华市| 贡觉县| 永济市| 绥宁县| 疏勒县|