#QT(QCharts绘制曲线)

devtools/2024/9/23 4:27:23/

1.IDE:QTCreator


2.实验:绘制曲线图表


3.记录:


4.代码

pro

QT       += core gui
#加入以下代码引入charts
QT +=charts
greaterThan(QT_MAJOR_VERSION, 4): QT += widgetsCONFIG += c++17# You can make your code fail to compile if it uses deprecated APIs.
# In order to do so, uncomment the following line.
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000    # disables all the APIs deprecated before Qt 6.0.0SOURCES += \main.cpp \mainwindow.cppHEADERS += \mainwindow.hFORMS += \mainwindow.ui# Default rules for deployment.
qnx: target.path = /tmp/$${TARGET}/bin
else: unix:!android: target.path = /opt/$${TARGET}/bin
!isEmpty(target.path): INSTALLS += target

mainwindow.h

#ifndef MAINWINDOW_H
#define MAINWINDOW_H#include <QMainWindow>//加入以下两行代码
#include <QtCharts>
QT_CHARTS_USE_NAMESPACEQT_BEGIN_NAMESPACE
namespace Ui {
class MainWindow;
}
QT_END_NAMESPACEclass MainWindow : public QMainWindow
{Q_OBJECTpublic:MainWindow(QWidget *parent = nullptr);~MainWindow();private:Ui::MainWindow *ui;//创建私有曲线
private:QChartView *chartview;QChart *chart;void CreateChartFunc();   //创建图表的函数
};
#endif // MAINWINDOW_H

mainwindow.cpp

#include "mainwindow.h"
#include "ui_mainwindow.h"MainWindow::MainWindow(QWidget *parent): QMainWindow(parent), ui(new Ui::MainWindow)
{ui->setupUi(this);setWindowTitle("图表案例分析");CreateChartFunc();     //调用此函数实现图表绘制功能
}MainWindow::~MainWindow()
{delete ui;
}//创建图表函数
void MainWindow::CreateChartFunc()
{//创建图表chartview=new QChartView(this);chart=new QChart();chart->setTitle("sin()/cos()图表测试");chartview->setChart(chart);   //添加chart到chartview库this->setCentralWidget(chartview);//创建曲线序列QLineSeries *series1=new QLineSeries();QLineSeries *series2=new QLineSeries();series1->setName("sin曲线");series2->setName("cos曲线");chart->addSeries(series1);chart->addSeries(series2);//通过序列添加数值qreal t=0,y1,y2,intv=0.1;for(int i=0;i<100;i++){y1=qSin(t);series1->append(t,y1);y2=qCos(t);series2->append(t,y2);t=t+intv;}//创建坐标轴QValueAxis *axisX=new QValueAxis();   //X轴axisX->setRange(0,10);axisX->setTitleText("time(secs)");QValueAxis *axisY=new QValueAxis();   //Y轴axisY->setRange(-2,2);axisY->setTitleText("values");chart->setAxisX(axisX,series1);chart->setAxisY(axisY,series1);chart->setAxisX(axisX,series2);chart->setAxisY(axisY,series2);
}


http://www.ppmy.cn/devtools/53577.html

相关文章

mfc140.dll电脑文件丢失的处理方法,这4种方法能快速修复mfc140.dll

mfc140.dll文件是一个非常重要的dll文件&#xff0c;如果它丢失了&#xff0c;那么会严重的影响程序的运行&#xff0c;这时候我们要找方法去修复mfc140.dll这个文件&#xff0c;那么你知道怎么修复么&#xff1f;如果不知道&#xff0c;那么不妨看看下面的mfc140.dll文件丢失的…

视频音频中断测试

像剪映、Bazaart这类可以添加音频文件的APP&#xff0c;除了常规的功能测试、性能测试、安全性测试、支付、兼容性测试等之外&#xff0c;还需要进行中断测试。 那么中断测试有哪些呢&#xff1f; 1.来电中断 编辑页添加视频音频文件&#xff0c;在播放的过程中&#xff0c;…

sprintboot依赖管理和自动配置

springboot依赖管理和自动配置 依赖管理和自动配置依赖管理什么是依赖管理修改自动仲裁/默认版本号 starter场景启动器starter场景启动器基本介绍官方提供的starter第三方starter 自动配置自动配置基本介绍SpringBoot自动配置了哪些?如何修改默认配置如何修改默认扫描包结构re…

天翼云认证专家解决方案架构师(理论)

1.某大型互联网公司为了提升应用程序和基础设施的稳定性&#xff0c;计划引入自动化监控工具。以下哪些工具可以满足公司的需求? A.Grafana B.Nagios C.Prometheus D.Jenkins 2.天翼智能边缘云ECX是位于网络边缘位置的云&#xff0c;兼具云和CDN的特性&#xff0c;将计算、存…

ABAP-03基础数据类型

基本数据类型 数据类型默认大小&#xff08;byte&#xff09;有效大小初始值说明示例C11-65535SPACE文本字符&#xff08;串&#xff09;‘Name’N11-65535‘00…0’数字文本‘0123’T66‘000000’时间(HHMMSS)‘123010’D88‘00000000’日期(yyyymmdd)‘20090901’I4-231~232…

Vue3、Element Plus使用v-for循环el-form表单进行校验

在开发中遇到了这样一个需求 有一个form是通过v-for生成出来的&#xff0c;并且数量不确定&#xff0c;每个表单中的字段都需要做校验&#xff0c;就将自己的解决方法记录了下来。 完整代码如下 <template><div class"for-form"><el-button type&quo…

Windows10 利用QT搭建SOEM开发环境

文章目录 一. SOEM库简介二. 安装WinPcap三. SOEM(1.4)库安装(1) 编译32位库(2) 编译64位库 四. 运行SOEM示例代码五. WIN10下利用QT构建SOEM开发环境 一. SOEM库简介 SOEM&#xff08;Scalable Open EtherCAT Master 或 Simple Open EtherCAT Master&#xff09;是一个开源的…

钡铼BL102应用智能电网配电柜PLC转MQTT无线接云服务

在当今智能电网的发展浪潮中&#xff0c;配电系统的智能化升级是提升电网效率与稳定性的重要环节。随着物联网技术的飞速发展&#xff0c;实现配电柜的远程监控与管理成为了可能&#xff0c;而这一转变的关键在于如何有效地将传统配电柜中的PLC数据接入到云端进行分析与处理。 …