QT下利用QWT来实现二维曲线图动态显示

本文介绍了一个使用QT和QWT库在触摸屏上动态展示串口接收数据的项目。主要内容包括串口数据的格式转换与处理,以及多界面共享串口资源的实现。虽然界面未进行美化,但主要功能已完成,如需完整代码,可联系作者。文中还分享了部分关键代码和效果图。
摘要由CSDN通过智能技术生成

       最近忙着做个项目,要求在开发板的触摸屏上动态显示单片机或者FPGA通过串口传输的数据,经过考虑采用QT做界面,并插入QWT库,效果相当不错。

       其中,完成最重要的2个关键点:1、串口传输的数据在qt下进行格式转换,并进行处理。 2、多个界面共用同一个串口,如何确保界面切换的时候,串口不占用。

       因为刚学QT没多久,老板催得紧,没来得及美化界面,不过主要的功能已经完全实现。这里我给出一些关键的代码和显示界面,如果想要全部代码的话,请告诉我一声,欢迎QQ联系:257443156。额,希望我写的能给你们有帮助,毕竟这些都是自己做科研的成果,而且还有些是网上找不到的解决方法。

效果图如下:

要使用 Qwt 绘制曲线图,需要先在项目中添加 Qwt 库,并且在代码中包含 Qwt 头文件。 以下是一个简单的示例代码,演示如何使用 Qwt 绘制曲线图: ```cpp #include <QApplication> #include <QMainWindow> #include <QVBoxLayout> #include <qwt_plot.h> #include <qwt_plot_curve.h> int main(int argc, char *argv[]) { QApplication a(argc, argv); // 创建主窗口 QMainWindow mainWindow; QWidget* centralWidget = new QWidget(&mainWindow); mainWindow.setCentralWidget(centralWidget); // 创建 Qwt 绘图控件 QwtPlot* plot = new QwtPlot(centralWidget); QVBoxLayout* layout = new QVBoxLayout(centralWidget); layout->addWidget(plot); // 创建曲线 QwtPlotCurve* curve = new QwtPlotCurve(); curve->setTitle("My Curve"); // 设置曲线数据 double xData[5] = {0.0, 1.0, 2.0, 3.0, 4.0}; double yData[5] = {0.0, 2.0, 4.0, 6.0, 8.0}; curve->setSamples(xData, yData, 5); // 将曲线添加到绘图控件中 curve->attach(plot); // 显示窗口 mainWindow.show(); return a.exec(); } ``` 在这个示例代码中,我们首先创建了一个 QMainWindow 对象,并将其设置为主窗口。然后,我们创建了一个 QwtPlot 对象,该对象用于绘制曲线图。我们还创建了一个 QwtPlotCurve 对象,该对象表示要绘制的曲线。设置曲线数据后,我们将曲线添加到 QwtPlot 对象中,并将其显示在主窗口中。 需要注意的是,要使用 Qwt 绘制曲线图,需要在项目中添加 Qwt 库。具体的添加方法可以参考 Qt 文档中的说明。
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值