QT——Qcharts绘制实时曲线
本文将使用QT实现一个简单的动态实时曲线,将来可以把数据收集起来,做成一个可视化的曲线
效果图
1. 创建好工程之后,在.Pro文件增加 charts
2. 在设计里,拖动一个 Graphics View ,然后提升为QChartView
3. 添加头文件和命名空间
4. 创建表
//创建表 void MainWindow::CreatCharts(){QChart *qchart = new QChart;//把chart放到容器里ui->graphicsView->setChart(qchart);//设置抗锯齿ui->graphicsView->setRenderHint(QPainter::Antialiasing);//创建两条线QLineSeries *ser0 = new QLineSeries;QLineSeries *ser1 = new QLineSeries;//设置名字ser0->setName("ser0");ser1->setName("ser1");//放入charts里qchart->addSeries(ser0);qchart->addSeries(ser1);//创建x坐标QDateTimeAxis *QaX = new QDateTimeAxis;//格式QaX->setFormat("hh:mm:ss");QaX->setTickCount(10);QaX->setTitleText("time");//创建y坐标QValueAxis *QaY = new QValueAxis;//设置范围QaY->setRange(-1,1);QaY->setTickCount(6);//将线条放入表中qchart->setAxisX(QaX,ser0);qchart->setAxisY(QaY,ser0);qchart->setAxisX(QaX,ser1);qchart->setAxisY(QaY,ser1); }
5. 当前效果
6. 接下来要把曲线画上去 创建QTimer类
7. 创建定时器、槽函数,1s给数据刷新一次
8. 数据更新
//数据更新 void MainWindow::RefreshTime_Slot(){//获取当前时间QDateTime currentTime = QDateTime::currentDateTime();//获取随机数qsrand(QTime::currentTime().second());int rand = qrand()%100;//获取0~10之间的数//获取初始化的qchartQChart *qchart =(QChart *)ui->graphicsView->chart();//获取之前的serQLineSeries *ser0 = (QLineSeries *)ui->graphicsView->chart()->series().at(0);QLineSeries *ser1 = (QLineSeries *)ui->graphicsView->chart()->series().at(1);//更新数据ser0->append(currentTime.toMSecsSinceEpoch(),cos(rand));ser1->append(currentTime.toMSecsSinceEpoch(),sin(rand));qchart->axisX()->setMin(QDateTime::currentDateTime().addSecs(-1*30));qchart->axisX()->setMax(QDateTime::currentDateTime().addSecs(1*30));ui->label->setText(QTime::currentTime().toString("hh:mm:ss"));}
QT——Qcharts绘制实时曲线相关推荐
- Qt串口通信实时曲线上位机源代码
Qt串口通信实时曲线上位机源代码 带用户配置保存 数据保存带有坐标轴缩放 拖动平移放大等功能,提供,提供源代码,注释,软件文档使用说明,可进行二次开发 通过定时发送获取数据,并将接收的数据采用Qt自带 ...
- teechart绘制实时曲线_关于PIII曲线
近期忙,忙于生计,三千出头的工资早已力不从心~公众号自上次更新以来已久久没有动静.今天决定再更新一篇:关于水文P-III曲线的一些内容.P-III曲线这里只讲一下绘图的问题.最近在做了几个频率曲线适线 ...
- teechart绘制实时曲线_快速学会CAD绘制传输线路图纸
一工具 CAD工程设计软件 二方法和步骤 万事开头难,遇到不懂的知识刚开始都有畏难的情绪,只要有决心学习,诚心想学会一项技能,那学会学好它就只是时间问题了.我们常常面临时间紧.需要快速入门甚至熟练地解 ...
- teechart绘制实时曲线_基于OpenCV的显著图绘制
显着性是图像的突出部分,我们的大脑会特别关注这个部分.上图突出了我们在看到一个场景或图像时会注意到的部分.例如,大家有没有曾经在看广告的时候被一些特别的内容吸引,为此我们还特意停下来多看了一会儿?这就 ...
- vb实时曲线的绘制和保存
在VB中绘制实时曲线是比较难的,一般要应用第三方控件或是Windows API函数来完成,但是如果你对实时曲线的要求不是很高,只要能表示出当前的一般情况的话,我们可以直接应用VB提供给我们的空间来完成 ...
- 用C 绘制实时曲线图
分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 在实际项 ...
- 模拟仪器仪表ActiveX(OCX)控件 - 实时曲线(RTChart)介绍及下载地址
SIARTChart Control(Simulated Instrument ActiveX RealTime Chart)即实时曲线控件,用于工控领域绘制实时曲线,它提供了很多属性和方法来操纵它, ...
- Qt学习:QtCharts绘制动态曲线,实时更新数据与坐标轴
前言:很久之前写了这篇文章后一直未进行修改更新,最近重新整理了代码和扩展了使用方式.代码路径见github: https://github.com/LYH-ux/Qt_Projects.git ,下文 ...
- python实时绘制动态曲线_pyqt中使用matplotlib绘制动态曲线
一.项目背景: 看了matplotlib for python developers这本书,基本掌握了在pyqt中显示曲线的做法,于是自己写一个. 二.需求描述: 1)X轴显示时间点,显示长度为1分钟 ...
最新文章
- 【C++】C/C++ 中default/delete特性
- 如何用ABP框架快速完成项目(2) - 快的定义!
- 神经网络与深度学习——TensorFlow2.0实战(笔记)(五)(NumPy科学计算库<矩阵和随机数>python)
- idal 创建springboot 项目_SpringBoot教程:Maven方式创建SpringBoot项目
- js语句连接mysql数据库_js中require()的用法----JS如何连接数据库执行sql语句或者建立数据库连接池...
- Samba在Ubuntu12.04安装
- mysql 驱动指令_Mysql的驱动包如何发送指令给MYSQL SERVER
- AI系统可以自动生成逼真的人工星系图像
- 微信Bscroll事件
- 一个老程序员的忠告:千万不要一辈子靠技术生存
- vue3 解决getCurrentInstance 打包后线上环境报错问题
- SIM卡检测信号故障分析
- 悟空问答死于知乎十周年
- swagger支持中英文
- Ios热更新,实时代码更新,动态更新,动态库framework
- 光电耦合器电路应用符号
- html里覆写css样式,!important覆写css行内样式
- TC SRM 553 DIV2
- mysql传入Bean_ods数据导入mysql
- new DecimalFormat(#0.###)中0与#
热门文章
- Elasticsearch7.17 一: 快速入门
- MOOC《Python语言程序设计》(第15次)Python计算生态概览(第九周)
- 化学老师为什么铤而走险当色情站长?
- Leetcode刷题:贪心算法
- OrCAD 与 Cadence Allegro PCB 入门 - 以 16.6版本为例 (3)
- 数据分析综述:一文带你详细了解自动驾驶技术
- 一条语句完成微信、支付宝支付,生成支付二维码
- 脉歌蓝牙耳机线评测_脉歌 TE-40 蓝牙耳机“升级线”体验
- Java-汉字字符串转拼音,包括首字母和全拼
- html语言中vlink,html中link text指的是什么?