分享一个曲线显示的软件源代码

yangt1100 2011-10-02 10:23:57
加精
今天花了一天时间写了这么一个小软件,软件主界面如下:

主要原理为:
1、从一个文本文件中读取数据
2、分析读取到的数据
3、根据分析的结果将数据用曲线表示
这个软件还可以对曲线进行缩放以及前后移动,下图为选中需要缩放曲线范围效果图:

下图为缩放后的曲线效果:


曲线的绘制全部使用GDI的MoveTo和LineTo完成,绘制的效率有点低。特别是需要绘制的线很多时感觉会有很大的延时,不知道有哪位高手能提出一些优化的方案。为方便演示,源码包中包含了两个演示数据文件,其中一个文件的数据量较大,在演示时可以明显的感觉到延时很大。
源码地址:http://download.csdn.net/detail/yangt1100/3654130
...全文
4211 98 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
98 条回复
切换为时间正序
请发表友善的回复…
发表回复
kalo111 2014-01-28
  • 打赏
  • 举报
回复
[quote=引用 30 楼 xuddk727 的回复:] 恩我也写了一个,包括以散点显示方式(测试了一下,大约100W数据就慢了) ================================================================ 源码求搞起····话说斑竹老大,博客写了几篇也没动静了··
_风往北吹 2014-01-14
  • 打赏
  • 举报
回复
非常感谢楼主分享,正在找这个...
u010446754 2013-04-25
  • 打赏
  • 举报
回复
很不错,值得拥有,辛苦了!
Iamisyangguang 2012-05-07
  • 打赏
  • 举报
回复
[Quote=引用 115 楼 的回复:]
引用 114 楼 的回复:

我也想下,为什么下不了啊???????


可以发邮件给我,我直接邮件发给你。yangt1100@163.com
[/Quote]
谢谢,我已经下载下来了,呵呵呵。。。。。。。。
huanghbb 2012-05-06
  • 打赏
  • 举报
回复
非常感谢大牛的无私分享!!
yangt1100 2012-05-06
  • 打赏
  • 举报
回复
[Quote=引用 114 楼 的回复:]

我也想下,为什么下不了啊???????
[/Quote]

可以发邮件给我,我直接邮件发给你。
Iamisyangguang 2012-05-04
  • 打赏
  • 举报
回复
我也想下,为什么下不了啊???????
naiveC 2012-03-13
  • 打赏
  • 举报
回复
预估应该画的点,采样出部分点绘制,应该是个不错的想法。
sevancheng 2012-03-13
  • 打赏
  • 举报
回复
效率为王。。。
聪明胖子 2012-03-13
  • 打赏
  • 举报
回复
感谢牛人们的无私付出,受教了!
zsedcqwaa 2012-03-13
  • 打赏
  • 举报
回复
我写的是读取TXT的。。
野生大猫 2012-02-17
  • 打赏
  • 举报
回复

只画过电流波形图.....
C_S_D_N_USER 2012-02-17
  • 打赏
  • 举报
回复
有源代码,还是VC的,而且没有积分,好东西呀!很有参考价值,谢谢楼主分享!!!!
MJmichael 2012-02-17
  • 打赏
  • 举报
回复
其实直接花就行了,没那么复杂
wshylb1 2012-02-14
  • 打赏
  • 举报
回复
对于我这样的初学者确实很有用,正在拜读中
等有收获了再来分享经验啊
pangruijuan 2012-02-13
  • 打赏
  • 举报
回复
谢谢分享。。。
下载了。
正好用的着。……
cykxy123 2011-12-21
  • 打赏
  • 举报
回复
非常感谢坛子里这些大牛的无私分享
对入门和学习都非常有帮助
leiwfqz 2011-11-18
  • 打赏
  • 举报
回复
我自己也是编了一个类似的,同样是数据量一大就很慢,尤其是窗口重绘的时候,特别慢
Sandrer 2011-11-17
  • 打赏
  • 举报
回复
能不能用多线程画以增加效率?

我是这样想的,分 N 个线程,然后创建 N 个内存 DC,画好后再一次性复制到主窗口的 DC 上
米娅 2011-11-15
  • 打赏
  • 举报
回复
[Quote=引用 30 楼 xuddk727 的回复:]
恩我也写了一个,包括以散点显示方式(测试了一下,大约100W数据就慢了)

模拟曲线

缩放自适应,

色调更改

线性拟合,柱状,注释等,由于是项目里面的,改日自己整理一下写一个分享给大家。
[/Quote]
期待xuddk727的分享
加载更多回复(78)
基于PyQt5的实时曲线绘制与串口调试助手源代码分享,包括曲线绘制、串口调试助手及文件保存加载十六进制显示功能,基于PyQt5实时曲线绘制源代码和串口调试助手源代码带文件保存加载十六进制显示 Python两个工程的源代码 1.功能介绍: 包含两个程序:1.使用PyQt5编写实现的串口调试助手及源代码,2.pyqtgraph波形曲线显示源代码。 串口助手除了收发文本框外,还带有波特率数据位停止位校验位等参数设定,并具备十六进制收发,定时发送,保存到文件等功能。 波形绘制程序,除了曲线外,还带有开始停止测量,数据记录和数据加载等功能。 源代码均有详细的注释,并提供服务。 2.环境说明: 开发环境是PyQt5,使用Python自带的串口库serial,波形曲线采用pyqtgraph库。 源代码中包含注释,设计说明文档等。 请将源码放到纯英文路径下再编译。 3.使用介绍: 可直接运行在可执行程序里的exe文件,操作并了解软件运行流程。 也可以使用Edit With IDLE 3.7编辑工具来运行Python脚本。 4.子功能模块介绍: 串口调试助手带有十六进制收发功能; 串口参数设定功能; 数
基于PyQt5的实时曲线绘制与串口调试助手源代码分享:串口助手支持十六进制显示与文件保存加载功能,波形绘制程序支持数据记录与加载功能,基于PyQt5的实时曲线绘制与串口调试助手源代码分享:串口助手功能丰富,曲线绘制功能强大,支持文件保存加载及十六进制显示,基于PyQt5实时曲线绘制源代码和串口调试助手源代码带文件保存加载十六进制显示 Python两个工程的源代码 1.功能介绍: 包含两个程序:1.使用PyQt5编写实现的串口调试助手及源代码,2.pyqtgraph波形曲线显示源代码。 串口助手除了收发文本框外,还带有波特率数据位停止位校验位等参数设定,并具备十六进制收发,定时发送,保存到文件等功能。 波形绘制程序,除了曲线外,还带有开始停止测量,数据记录和数据加载等功能。 源代码均有详细的注释,并提供服务。 2.环境说明: 开发环境是PyQt5,使用Python自带的串口库serial,波形曲线采用pyqtgraph库。 源代码中包含注释,设计说明文档等。 请将源码放到纯英文路径下再编译。 3.使用介绍: 可直接运行在可执行程序里的exe文件,操作并了解软件运行流程。 也可以使用Edi
Qt串口通信实时曲线绘制系统:配置保存、数据记录与坐标轴缩放调整源码分享,附注释与设计文档,支持二次开发,Qt串口通信实时曲线上位机源代码 带用户配置保存 数据保存带有坐标轴缩放 拖动平移放大等功能,提供,提供源代码,注释,软件文档使用说明,可进行二次开发。 源码介绍: 通过定时发送获取数据,并将接收的数据采用Qt自带的QChart实现了在两个窗口内完成实时曲线绘制。 通信数据格式,采用定长的结构体完成封装;通信数据采用Modbus CRC16完成数据校验和;带有人性化的个性配置数据自动保存功能,打开后自动加载;带有数据实时记录功能,可以当前日期保存的文件,或按照序号生成,或指定文件名。 添加固定坐标轴的数据显示,以便于用户观察。 开发环境是Qt5.10.1,使用Qt自带的QSerialPort。 源代码中包含注释,设计说明文档等。 代码特点: 1、尽量贴合实际应用,细节考虑周到。 2、注释完善,注重讲解,为便于学习,还增加了扩展知识点介绍。 3、提供代码设计文档,使用文档,环境配置文档等。 4、提供,可定制开发。 功能如下: 采用QtChart完成曲线的绘制; 采用Modbus CR

2,586

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 资源
社区管理员
  • 资源
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧