VB中picturebox绘制实时曲线图,当数据显示不下时如何实现压缩,使曲线越来越密,初学者把仅有的分全赏了

绘图时X轴为时间,Y轴为接收数据,想实现当数据接收的越多时,原来绘制的曲线不被替代而是越来越密,即X轴可伸缩.

简单举个例子,不知道能否对你有用。。。(说明下而已,不能运行)
此例为一个小模块,原创哦~~非抄袭!
Private Sub 量程自动识别(ByVal 传递过来的数据 As Single)
Dim 量程 As Long

If 数据 <= Picture高度 Then
Exit Sub
End If

量程 = CLng(传递过来的数据 / 100 + 0.5) * 100 '获取新的高度

Picture1.ScaleHeight = 量程 'ScaleHeight属性为picture1的内部高度
Picture1.Cls '清空picture控件
Picture1.AutoRedraw = True '设置自动重绘有效
Picture1.DrawWidth = 1 '设置绘制线条宽度
End sub

哦,对了,之前采集的数据要记得保存起来(例如保存在数组中),之后要记得把以前所有的数据点都绘制上去哦。

判断最后一组数据在X轴上的位置,以此点的坐标为 picture1的 ScaleWidth ,上例只是高度的换成宽度不就好了呀。
还有你把之前的数据都存起来,每次清空picture时 重绘就OK了噢
温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答