我想用vb做个上位机实时曲线和历史曲线,怎么做呀
我想用vb做个上位机实时曲线和历史曲线,
问题一:实时曲线的数据是下位机的实时数据,采集问题已经解决,现在就是实时显示的问题?
问题二:历史曲线的数据是从数据库读过来的,请问怎么显示呀?
有没有什么控件能做的?怎么做呢?各位大侠给点指导吧?小弟刚学vb不久,请多多指教
[解决办法]
X轴是时间的话,需要设一个单位长度所代表的时间长度(比如一个单位长度代表1秒或10秒),这样根据时间的间隔就可以确定其在x轴的长度
[解决办法]
大概写了下,你参考吧
Dim lngCount As Long '数据总数 Count intDotCount = 100 '单屏显示的数据个数 Dim lngStart As Long '单屏描点的起始点位置 Dim i As Long If lngCount < intDotCount Then lngStart = 1 Else lngStart = lngCount - intDotCount End If '画曲线 picX.DrawWidth = 1 For i = lngStart To lngCount picX.Line -(i - lngStart, g_sngX(i)), vbGreen Next '描点 picX.DrawWidth = 3 For i = lngStart To lngCount picX.PSet (i - lngStart, g_sngX(i)), vbGreen Next
[解决办法]
数组 arr 是当作一个环使用的,最新采样电覆盖最旧的采样点。
为了下面绘图方便,数组 q 将这个环按照采样次序复制过来。