Qt绘图插件QCustomPlot配置、使用

一、配置QCustomPlot

官方下载地址:http://www.qcustomplot.com/index.php/download


下载之后将文件解压(不要有中文路径)

打开Qt,新建一个窗体工程

将解压得到的文件夹里面的头文件qcustomplot.h和源文件qcustomplot.cpp复制到工程文件夹下

在Qt中,添加已有文件,将头文件qcustomplot.h和提升类名称输入“QCustomPlot”,点击添加源文件qcustomplot.cpp都添加到工程


在工程的pro中添加上printsupport


打开界面文件,进入ui,向主窗口中添加一个widget区域,对着所添加的widget区域点击右键,选择“提升为”按钮


提升类名称输入“QCustomPlot”,点击添加


点击提升,完成配置


二、QCustomPlot的使用

原理:

QCustomPlot可以理解为就是一个绘图板的类,它继承于Widget,界面中的Widget类提升为QCustomPlot才能够绘图

QCustomPlot中的每一个曲线是一个Graph对象,凡是跟显示数据有关的我们就对Graph进行操作或调用Graph对象提供的方法

一个QCustomPlot里有四个坐标轴,其中xAxisyAxis就是我们上图看到的x和y坐标轴,还有两个坐标轴xAxis1和yAxis1为上方和右方的x、y坐标,默认隐藏,可以通过程序设计显示


接着上面的操作,首先将上面提升为QCustomPlot类的容器界面的对象重命名为qCustomPlot

在主类Widget构造函数中加入如下代码,绘制一个标准标准的y=x^3的曲线

Widget::Widget(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Widget)
{
    ui->setupUi(this);

    //定义两个可变数组存放绘图的坐标数据
    QVector<double> x(101),y(101);//分别存放x和y坐标的数据,101为数据长度
    //添加数据,我们这里演示y=x^3,为了正负对称,我们x从-10到+10
    for(int i=0;i<101;i++)
    {
        x[i] = i/5 - 10;
        y[i] = x[i] * x[i] * x[i];
    }

    //向绘图区域QCustomPlot(从widget提升来的)添加一条曲线
    ui->qCustomPlot->addGraph();
    //添加数据
    ui->qCustomPlot->graph(0)->setData(x,y);

    //设置坐标轴标签名称
    ui->qCustomPlot->xAxis->setLabel("x");
    ui->qCustomPlot->yAxis->setLabel("y");

    //设置坐标轴显示范围,否则我们只能看到默认的范围
    ui->qCustomPlot->xAxis->setRange(-11,11);
    ui->qCustomPlot->yAxis->setRange(-1100,1100);
    
    //重绘,这里可以不用,官方例子有,执行setData函数后自动重绘
    //我认为应该用于动态显示或者是改变坐标轴范围之后的动态显示,我们以后探索
    //ui->qCustomPlot->replot();

}

编译




最后,我在操作的过程中遇到这里出现错误


#include"../../qcustomplot.h"
改成

#include <qcustomplot.h>

就可以了


  • 5
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值