c1 chart Live的问题
运行chart Live的时候,我修改了dt = new DispatcherTimer() { Interval = TimeSpan.FromSeconds(0.1) }; ,设定为0.1,然后把int nAddPoints = 10;理论上每秒应该添加100个数据,但是实际上添加的数据远小于每秒100,而且会卡顿。把Interval时间缩短,比如0.01,卡顿更明显。
chart Live性能每秒支持的最大刷新点数是多少?我的需求是实时显示100Hz的数据,如何实现? 回复 1楼tian__xiaa的帖子
谢谢反馈。
按照你的提示,我将aAddPoints属性设置为10,将FromSeconds方法传入0.01,并未重现你的问题。在我的电脑展示依然顺畅。
使用版本:2015V2。
VS2013&Win8.1 回复 2楼Alice的帖子
我用的是同样的VS和系统版本,再把automax取消,max设定为1000或2000,计数正常么?理论上是每秒100点,但是会缺失 回复 3楼tian__xiaa的帖子
谢谢反馈。
我不太理解如何设置max=1000,因为示例的max本来就是1000,能够将你的代码发给我看看。 回复 4楼Alice的帖子
我修改过几次。。已经忘记初始版本了。我现在用的版本是
chart.View.AxisY.Min = -1000;
chart.View.AxisY.Max = 1000;
// chart.View.AxisX.
chart.View.AxisX.AutoMax = true;
chart.View.AxisX.Max = 1000;
//chart.View.AxisX.AutoMax = true;
dt = new DispatcherTimer()
{ Interval = TimeSpan.FromSeconds(0.1) };
dt.Tick += (s, e) => Update();
dt.Start();
这里还有另外一个问题,就是如果我在设置了AutoMax之后,定义Max,那么AutoMax就失效了。是不是如果想要设定X周的初始范围,就不能使用AutoMax功能?
我录了一段视频,可以看到情况。见附件。有卡顿,而且主要问题是,显示的数据流不够。
AutoMax之后,Max肯定失效了,这是策略。就好像AutoSize设置后,Size就失效了一样。
关于性能问题,考虑两个方面因素:
1. 机器硬件性能。我用的i7 16G内存。
2. 你使用的demo是ControlExplorer,有可能其他地方会导致整体刷新慢。可以更换为 C:\Users\warrenguo.GRAPECITY\Documents\ComponentOne Samples\WPF\C1.WPF.Chart\CS\ChartSamples 然后再尝试一下性能。
你提到1秒钟理论值点数是多少,这个没有数据。根据不同的情况,算法和硬件,按照肉眼可识别为标准会有起伏。如果在你必须的硬件条件下仍然卡顿,建议对数据进行抽样。
页:
[1]