用Tchart画曲线,想让曲线能动态地显示最新的一段曲线,之前的曲线向左移出。看delphi自带的demo,看不懂

2025-05-13 21:03:04
推荐回答(1个)
回答1:

这个是所有Chart的刷新,你只要看 page0,也就是底下这段。

原理是先删掉曲线第一笔的资料,再从後面插一笔新的,所以X轴数值要一直递增,

如果你要让X轴参数固定,可能先排在阵列里处理过,再餵到series 会比较好作。

  Case PageIndex of
     0,3,4,6:  
         With TheChart do
         begin
            for t:=0 to SeriesCount-1 do
            With Series[t] do         //指定绘制的曲线
            begin
               tmpX:=XValues[1]-XValues[0];  //取得X轴数值间隔
               Delete(0);                    //删除曲线的第一笔数据
               AddXY(                        //插入新的数据,会自动放在最後
                     XValues.Last+tmpX,     //设定X轴数值 
                     YValues.Last+Random(100)-50, //设定Y轴数值
                     '',                          //Label 
                     clTeeColor);                 //曲线颜色  
            end;
        end;
     ...