★☆★☆★===需跟踪仪器高速采样数据并绘制相关“曲线图”,用何种方式画曲线最快?===★☆★☆★ 如题:通过232串口与仪器连接(115200 bps),仪器工作的时候每秒发送300帧数据过来(每帧16个字节,需转换为浮点数),由程序绘制实时曲线以反映数据变化情况。若在内存中跑,所有运算顶多一毫秒就可完成,但画线刷新很浪费时间,导致数据严重丢失,每秒只能接收并处理<100帧数据。 不知在C#中何种方法绘制曲线图最快,望高手赐教。不甚感激! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 人眼睛没有那么快的,你只要保持每秒20多就最好了——实际上1秒刷新就差不多的,没必要时时的~~==================================================================博客空间:http://blog.csdn.net/lovingkiss资源下载:http://download.csdn.net/user/lovingkissEmail:loving-kiss@163.com优惠接单开发,收费带初学者,组件控件定制开发,成品源代码批发联系方式:Q64180940(请清楚注明业务还是技术咨询) 全天在线================================================================== 用zedgraph吧,很好用.按照你的说法串口上的数据流量应该是4.8k/s,这个速度不算很快,现在的机器处理这样的数据速度应该不会有任何问题的.建议你仔细看一下设备的编程手册,这种在串口上连续发送数据的方式还真是不多见,一般都会有响应位的. 楼上诸兄: 所谓“设备”乃是我们公司自行开发的仪器,单片机的采样频率高达上千赫。仅需发送部分数据过来上位机即可模拟出大致趋势变化情况。 redebug、lovingkiss等老兄说得没错,每秒刷新300次肯定是没必要的。一两次足够,但为了能尽可能多地接收数据,俺希望能找出一个最快的画曲线的方法。用第三方空间肯定很慢,因为他为了满足曲线分析查看,会将每个点放在内存中。这完全没必要,协同仪器工作时我完全可以随便画出曲线了事。等工作完成后再保存数据并使用专门的图标控件供用户查看。 还是谢谢各位,请惠赐高速画曲线的方法,小弟所学有限,可能某些众所周知的办法都不了解。 最好用个DLL,别指望C#的GDI+了。不过 300条数据,人是看不过来的,靠,你们搞设计的是谁啊,是不是脑子不好,300条数据! 可以试试DrawLines方法一次性绘制多点曲线,这样绘制的曲线的速度会快很多 BTW:不管用何种方式实现,俺不避讳“Unsafe Code”,也不会嫌VC dll麻烦,虽然没怎么用过它。请说明白点,最好不吝写两句代码。OK? delphi下我用过iPlot的控件,速度很快。能够满足你的需要应该有.net版本的。你可以到网站上看看。我也是做工业上显示才用到iplot的。 我觉得线程再多CPU和显卡还是只有一个,不过还是打算写个程序比较一下,hbcbsxw兄可试过?控件的速度很快吗?可能用GDI+写个函数直接画在PictureBox里面还快点。我想知道用何种(编程)方式画曲线最快。如果知道某个控件快的话,还不如告诉我该控件画图的方式和程序代码。 顺便求教: 在VB中可以用“GetTickCount”这个API函数来实现毫秒级的计时,在C#中可否使用管理代码直接来实现? 你的需求我还是觉得有点奇怪,不知是不是想看到300个点绘制的过程呢?难道一秒钟绘制一次,一次绘制300个点不行吗?Zedgraph完全可以,不知道兄弟试过没有? 按楼主的需求,用GDI+的确很难满足,可以考虑用DirectX. 曲线是用来跟踪仪器工作状态的,必须能反应整个过程的趋势变化,根据视觉反应速度,每秒刷新一次图像是可以反应动态效果的,但下位机采样速度太快(此速度乃是仪器要求),所以必须使用最快的画图方式以提高系统的整体性能。 这个问题本身只是一个“什么方式画图最快”的问题,无须过多解释。 俺还是先试试管理代码(GDI+)的速度能否达到要求。 http://bbs.msproject.cn/default.aspx?g=posts&t=242 怎样改变图片上某一点的颜色? 请教客户端与服务端交互问题 求一条SQL语句 一个form初始化要执行绑定数据,在那里执行? VS2008 XML 架构怎么用? 请教一个字符串操作的问题。 才学正则,碰到一个问题,请高手指点! 怎样发出一个固定频率的声音??? 扫雷游戏实现中的控件问题 让c#编译出来的程序与Delphi媲美 求c#实现视频音频聊天程序的代码 谁有标准的Exif信息对照文档,最好是中文的?
博客空间:http://blog.csdn.net/lovingkiss
资源下载:http://download.csdn.net/user/lovingkiss
Email:loving-kiss@163.com
优惠接单开发,收费带初学者,组件控件定制开发,成品源代码批发
联系方式:Q64180940(请清楚注明业务还是技术咨询) 全天在线
==================================================================
所谓“设备”乃是我们公司自行开发的仪器,单片机的采样频率高达上千赫。仅需发送部分数据过来上位机即可模拟出大致趋势变化情况。
redebug、lovingkiss等老兄说得没错,每秒刷新300次肯定是没必要的。一两次足够,但为了能尽可能多地接收数据,俺希望能找出一个最快的画曲线的方法。用第三方空间肯定很慢,因为他为了满足曲线分析查看,会将每个点放在内存中。这完全没必要,协同仪器工作时我完全可以随便画出曲线了事。等工作完成后再保存数据并使用专门的图标控件供用户查看。 还是谢谢各位,请惠赐高速画曲线的方法,小弟所学有限,可能某些众所周知的办法都不了解。
请说明白点,最好不吝写两句代码。OK?
我想知道用何种(编程)方式画曲线最快。如果知道某个控件快的话,还不如告诉我该控件画图的方式和程序代码。
在VB中可以用“GetTickCount”这个API函数来实现毫秒级的计时,在C#中可否使用管理代码直接来实现?
俺还是先试试管理代码(GDI+)的速度能否达到要求。