我在C#中使用FastLineChart来实时显示来自外部设备的信号.采样率约为700Hz.在我的程序中,我下采样到大约100Hz以最小化显示器的不必要的分辨率,但仍然使用太多CPU这样做.
我认为问题是我在图表中滚动数据(就像在Windows中的CPU图形一样),这就是在耗费资源.我这样做是通过删除最旧的元素然后在特定系列中添加一个新元素(如下所示).
timeGraph.Series[0].Points.RemoveAt(0);
timeGraph.Series[0].Points.AddY(average);
Run Code Online (Sandbox Code Playgroud)
CPU负载约为30%,我认为有点太高了.我没有最新的电脑,但它是带有GT9600显卡的Code 2 Duo.
有没有人有什么建议?有一个更好的方法吗?或者一种特定的方法来加快速度?
感谢您的任何帮助!