任务要求:
1.x轴是以时间间隔为刻度,时间间隔可以修改,y轴表示接收的数据值,最高位220,中间有个参考值110,最小值为0,坐标如图所示;
2.根据时间间隔会读取到一个数值(坐标点),绘制一个实时动态度;
类似于下图:
我遇到的问题:
1.不能确定是否使用控件去做,网上有的资料说是用Chart控件做;
2.坐标系的确定,怎么指定坐标系;
3.实时显示,怎么让其动态的绘制;
网上的野比好像说的不错,但源代码丢失,希望有的可以分享一下。。。多谢!
恳请给出思路,不胜感激!!!
------解决思路----------------------
如果只是画个曲线,
mschart和开源的zedgraph都能轻松实现,
所谓的动态曲线,真正的动态是自己更新后台的数组
数组更新了,曲线也就动了
------解决思路----------------------
可以参考一下微软团队的DynamicDataDisplay,是基于WPF的
------解决思路----------------------
用 GDI 画就是了,不就是一条线吗?图表的的网格和坐标值都是先做好成图片作为背景的
画线在 paint 事件中完成,数据算好保存在数组 DrawLines、DrawPath 都可以
最好先转置和平移坐标系,这样便于计算
------解决思路----------------------
把数据放到数组里面,更新前先擦除
------解决思路----------------------
如果实在不会可以私信我qq232778910qq.com我发一份我得代码给你
------解决思路----------------------
你好,做过一个类似的吧,就是实时监测某图像区域的灰度值变化就是做闪频测试吧,要求是坐标可以实时动态的修改,包括Y值还有每页显示的数量,我做的类似任务管理器的那个波形图,有需要的话,我可以把自己写的类发给你,里面有注释,,其实最关键还是思路吧,
1.确定初始值
2.确定值得位置
3.计算相应的比例
4.获取要显示的数据
5.设置数据显示的坐标
6.打包数据,划线即可
------解决思路----------------------
自己做的话,确实是使用graphic来画的。
确定好时间轴的间隔,设置好原点的值,其他的都减去原点的值作为时间轴的值;y轴就是直接的数据就行,不用变动;
接着要自己做坐标转化,变成可以画在画布上的数值。划线就简单了。
------解决思路----------------------
一个指定长度的数组,从下标1开始,向左覆盖原的数据。完成以后,用最后一个空间来接收新的数据。
再根据当前的数组,把曲线更新了就OK