news 2026/7/7 6:14:39

QCustomPlot绘制曲线

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
QCustomPlot绘制曲线

QCustomPlot绘制曲线

  • 1、前言
  • 2、下载 QCustomPlot 库
  • 3、在项目中使用QCustomPlot库
    • 3.1 把 QCustomPlot 加入你的 .pro 文件
    • 3.2 UI 里放一个 Widget 并提升为 QCustomPlot
    • 3.3 初始化 QCustomPlot
  • 4、项目文件
    • 4.1 .pro文件
    • 4.2 .h文件
    • 4.3 .cpp文件
  • 5、总结

1、前言

记录一下QCustomPlot绘制曲线的实现方法,方便自己回顾,也可以给有需要的人提供帮助。

2、下载 QCustomPlot 库

先从官网下载QCustomPlot 库

QCustomPlot 库下载链接

把下载好的压缩包解压

进入解压后的压缩包,找到这两个文件

把这两个文件复制粘贴到项目同级目录下

3、在项目中使用QCustomPlot库

3.1 把 QCustomPlot 加入你的 .pro 文件

把PrintSupport 模块添加进来
QT+=core gui printsupport

把前面那两个文件添加到,pro文件中,然后构建
SOURCES+=\ main.cpp \ studyqcustomplot.cpp \ qcustomplot.cpp HEADERS+=\ studyqcustomplot.h \ qcustomplot.h FORMS+=\ studyqcustomplot.ui

3.2 UI 里放一个 Widget 并提升为 QCustomPlot

在Qt Designer(UI)中添加一个QWidget

右键这个QWidget,点击提升为

输入QCustomPlot,接着点击添加

点击提升

可以看到这个QWidget被提升为了QCustomPlot

3.3 初始化 QCustomPlot

添加头文件

绘制曲线
// 生成 100 个 X/Y 点QVector<double>x(100),y(100);for(inti=0;i<100;++i){x[i]=i;y[i]=qSin(i/10.0);// 画一条正弦曲线}// 添加一条曲线ui->widget->addGraph();ui->widget->graph(0)->setData(x,y);// 设置坐标轴范围ui->widget->xAxis->setRange(0,100);ui->widget->yAxis->setRange(-1,1);// 绘制ui->widget->replot();
如下图所示,成功绘制

4、项目文件

为了方便大家参考,把.pro,.h,.cpp文件放在下面了

4.1 .pro文件

QT+=core gui printsupportgreaterThan(QT_MAJOR_VERSION,4):QT+=widgets CONFIG+=c++17#You can make your code fail to compileifit uses deprecated APIs.#In order todoso,uncomment the following line.#DEFINES+=QT_DISABLE_DEPRECATED_BEFORE=0x060000# disables all the APIs deprecated before Qt6.0.0SOURCES+=\ main.cpp \ studyqcustomplot.cpp \ qcustomplot.cpp HEADERS+=\ studyqcustomplot.h \ qcustomplot.h FORMS+=\ studyqcustomplot.ui#Default rulesfordeployment.qnx:target.path=/tmp/$${TARGET}/binelse:unix:!android:target.path=/opt/$${TARGET}/bin!isEmpty(target.path):INSTALLS+=target

4.2 .h文件

#ifndefSTUDYQCUSTOMPLOT_H#defineSTUDYQCUSTOMPLOT_H#include<QWidget>#include<qcustomplot.h>QT_BEGIN_NAMESPACEnamespaceUi{classStudyQCustomPlot;}QT_END_NAMESPACEclassStudyQCustomPlot:publicQWidget{Q_OBJECTpublic:StudyQCustomPlot(QWidget*parent=nullptr);~StudyQCustomPlot();private:Ui::StudyQCustomPlot*ui;};#endif// STUDYQCUSTOMPLOT_H

4.3 .cpp文件

#include"studyqcustomplot.h"#include"ui_studyqcustomplot.h"StudyQCustomPlot::StudyQCustomPlot(QWidget*parent):QWidget(parent),ui(newUi::StudyQCustomPlot){ui->setupUi(this);// 生成 100 个 X/Y 点QVector<double>x(100),y(100);for(inti=0;i<100;++i){x[i]=i;y[i]=qSin(i/10.0);// 画一条正弦曲线}// 添加一条曲线ui->widget->addGraph();ui->widget->graph(0)->setData(x,y);// 设置坐标轴范围ui->widget->xAxis->setRange(0,100);ui->widget->yAxis->setRange(-1,1);// 绘制ui->widget->replot();}StudyQCustomPlot::~StudyQCustomPlot(){deleteui;}

5、总结

以上就是QCustomPlot绘制曲线的整个过程了,浏览过程中,如若发现错误,欢迎大家指正,有问题的可以评论区留言或者私信。最后,如果大家觉得有所帮助的话,可以点个赞,谢谢大家!祉猷并茂,顺遂无虞!
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/6 13:59:32

Wan2.2-T2V-A14B模型对少数民族服饰文化的尊重呈现

Wan2.2-T2V-A14B&#xff1a;当AI遇见民族之美&#xff0c;如何让技术“穿对衣服”&#xff1f; 你有没有见过这样的场景——AI生成的“少数民族舞蹈视频”里&#xff0c;姑娘头上顶着蒙古族银冠&#xff0c;身上却套着苗族刺绣裙&#xff0c;脚踩彝族绑腿靴&#xff0c;背景还…

作者头像 李华
网站建设 2026/7/7 8:52:26

【Linux C/C++开发】Linux C/C++ 编程:声明、定义与前置声明深度解析

Linux C/C 编程&#xff1a;声明、定义与前置声明深度解析 本文档基于 Linux 内核和 GNU 工具链环境&#xff0c;深入解析 C/C 编程中的声明 (Declaration)、定义 (Definition) 和前置声明 (Forward Declaration) 概念&#xff0c;结合 ELF 文件格式和符号表机制&#xff0c;提…

作者头像 李华
网站建设 2026/7/6 10:55:10

Chunker:一站式解决Minecraft跨平台存档转换难题

Chunker&#xff1a;一站式解决Minecraft跨平台存档转换难题 【免费下载链接】Chunker Convert Minecraft worlds between Java Edition and Bedrock Edition 项目地址: https://gitcode.com/gh_mirrors/chu/Chunker 还在为不同设备间无法共享Minecraft世界而烦恼吗&…

作者头像 李华
网站建设 2026/7/6 21:39:35

VS Code Jest插件终极指南:打造高效的JavaScript测试工作流

VS Code Jest插件终极指南&#xff1a;打造高效的JavaScript测试工作流 【免费下载链接】vscode-jest The optimal flow for Jest based testing in VS Code 项目地址: https://gitcode.com/gh_mirrors/vs/vscode-jest 还在为JavaScript测试调试而烦恼吗&#xff1f;&am…

作者头像 李华
网站建设 2026/7/7 13:32:17

PCL --K4PCS算法实现点云粗配准

PCL K-4PCS算法&#xff1a;三维点云粗配准的“快速全局对齐神器” 如果把三维点云配准比作拼一幅散落的巨型三维拼图&#xff0c;PCL中的K-4PCS&#xff08;KFPCS&#xff09;算法就像一位经验丰富的“拼图大师”——无需预先对齐&#xff08;区别于ICP的“局部精修”&#x…

作者头像 李华
网站建设 2026/7/6 17:03:39

中国民族贸易促进会商务代表团访问埃塞俄比亚国家能源部——一乡一品一梦想 一带一路一世界

2025年12月10日下午&#xff0c;中国民族贸易促进会副会长张敏与埃塞俄比亚中国民族贸易促进会筹备处主任陈林率商务代表团&#xff0c;正式访问埃塞俄比亚国家能源部&#xff0c;与国家能源部部长高级顾问博士戈萨耶及再生能源首席执行官特梅斯根进行国家能源相关问题探讨。双…

作者头像 李华