cpubbs论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

LabVIEW+单片机学习套件全套教程资料下载[免费]LabVIEW论坛精华列表贴USB0816数据采集卡《LabVIEW宝典》
LabWindows/CVI论坛精华贴NET0816以太网数据采集卡RC0210远程设备授权系统 关闭关停锁定打开设备 户外分布式数据采集
NET1624低速高精度以太网数据采集卡WIFI0824SD无线WIFI网络数据采集卡脱机运行 SD存储 小尺寸微型 串口采集远程采集 安卓 手持移动采集 纪录仪
查看: 23345|回复: 222

[原创]获取Graph控件波形坐标例程

[复制链接]
发表于 2009-6-23 12:22:07 | 显示全部楼层 |阅读模式
本帖最后由 netcreature 于 2009-6-24 10:25 编辑

程序演示了如何获取Graph控件中波形数据的坐标,以及光标在面板和Graph控件中的相对坐标。效果图:

对于随机数据——如白噪声信号,相对比较复杂一点。此处不再演示!
游客,如果您要查看本帖隐藏内容请回复

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
发表于 2009-6-23 17:25:51 | 显示全部楼层
发表于 2009-6-23 22:04:45 | 显示全部楼层
发表于 2009-6-24 11:54:14 | 显示全部楼层
好东西,先下来看下。
发表于 2009-6-24 12:27:40 | 显示全部楼层
发表于 2009-6-24 14:17:03 | 显示全部楼层
发表于 2009-6-26 12:38:26 | 显示全部楼层
楼主,谢谢你的程序,我仔细看了下你的代码,很有启发
我想把这功能加到采集系统中,可是在判断是否显示的时候遇到了问题,请问楼主该如何解决
 楼主| 发表于 2009-6-26 13:59:45 | 显示全部楼层
你又没有说清楚究竟遇到了什么问题,叫我如何回答?
发表于 2009-6-28 00:40:49 | 显示全部楼层
发表于 2009-6-29 16:32:11 | 显示全部楼层
发表于 2009-6-30 09:53:58 | 显示全部楼层
不好意思,是我没有说清楚,我想解决的问题是:显示的曲线为采集到得数据(而不是用函数生成的数据),如何在这种情况下也能实现当鼠标移动到曲线上时显示坐标,否则不显示!
发表于 2009-6-30 15:15:35 | 显示全部楼层
好东西哦,不过如果曲线是有随机数绘制的,在判断的这个模块就有难度,不知道斑竹如何解决
 楼主| 发表于 2009-6-30 16:39:13 | 显示全部楼层
对于随机数据(如白噪声、采样信号等),一般只是在关键点的数据是有效的,两点之间的数据是通过插值得到的(一般为直线插值);
因此,我们需要通过GetPlotAttribute(panelHandle,ControlID,plotHandle,ATTR_PLOT_XDATA/YDATA,...)将绘图缓冲区的数据拷贝出来,然后,针对鼠标在不同X轴区间,通过直线插值,来得到相应Y轴坐标(在关键点的X点,则对应关键Y点)。
算法比较繁琐,但是肯定能够实现!
发表于 2009-7-1 08:39:58 | 显示全部楼层
谢谢,学习一下
发表于 2009-7-1 15:53:15 | 显示全部楼层
恩,我用的也是版主在13楼的做法,可是在实施过程中却发现了一个问题,问题如下:
GetPlotAttribute(panel,PANEL_GRAPH,handle,ATTR_PLOT_YDATA,&y);
但每次运行时总会提示:“Argument too small.”错误点是在参数y上,而参数y我定义的就为double型。
请问这是什么原因?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|cpubbs论坛. ( 粤ICP备09171248号 )

GMT+8, 2025-4-4 02:46 , Processed in 0.647139 second(s), 5 queries , Gzip On, File On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表