QCustomplot笔记(一)之QCustomplot添加数据以及曲线

一.前言
楼主最近在学习QCustomplot相关的内容,于是想着记录下自己所学的,同时也给分享给有需要的人
楼主所涉及不深,也不一定描述的对,不喜勿喷。谢谢

二.过程
1.拖动一个QWidget,提示为QCustomplot
QCustomplot笔记(一)之QCustomplot添加数据以及曲线_第1张图片
2.编写代码

    // 数据构造
    QVector<double> x,y;
    for(double xi=-2*M_PI;xi<2*M_PI;xi+=0.1)
    {
        x.push_back(xi);
        y.push_back(sin(xi));
    }

    //添加曲线,必须添加这一句,不然显示不了曲线
    ui->widget->addGraph();

    // 设置x轴以及y轴的名称
    ui->widget->xAxis->setLabel("这是X轴");
    ui->widget->yAxis->setLabel("这是Y轴");

    // 设置数据
    ui->widget->graph(0)->setData(x,y);

    // 设置曲线名称
    ui->widget->graph(0)->setName("y=sin(x)");

    // 设置显示曲线名称
    ui->widget->legend->setVisible(true);

    // 设置曲线名称的字体属性
    ui->widget->legend->setFont(QFont("微软雅黑",13));

    // 设置自适应
     ui->widget->rescaleAxes(true);

QCustomplot笔记(一)之QCustomplot添加数据以及曲线_第2张图片
3.添加多组数据,添加多组数据和添加单组数据一样,感觉这样添加很方便,QCustomplot的作者真是一个牛人

// 数据构造
    QVector<double> x,y;
    for(double xi=-2*M_PI;xi<2*M_PI;xi+=0.1)
    {
        x.push_back(xi);
        y.push_back(sin(xi));
    }

    //添加曲线,必须添加这一句,不然显示不了曲线
    ui->widget->addGraph();

    // 设置x轴以及y轴的名称
    ui->widget->xAxis->setLabel("这是X轴");
    ui->widget->yAxis->setLabel("这是Y轴");

    // 设置数据
    ui->widget->graph(0)->setData(x,y);

    // 设置曲线名称
    ui->widget->graph(0)->setName("y=sin(x)");

    // 设置显示曲线名称
    ui->widget->legend->setVisible(true);

    // 设置曲线名称的字体属性
    ui->widget->legend->setFont(QFont("微软雅黑",13));

    // 设置自适应


    QVector<double> x1,y1;
    for(double xx=-2*M_PI;xx<2*M_PI;xx+=0.1)
    {
        x1.push_back(xx);
        y1.push_back(cos(xx));
    }

    //
    QPen pen;
    pen.setWidth(3);
    pen.setColor(Qt::green);

    ui->widget->addGraph();
    // 设置曲线颜色
    ui->widget->graph(1)->setPen(pen);

    ui->widget->graph(1)->setData(x1,y1);
    ui->widget->graph(1)->setName("y=cos(x)");
    ui->widget->rescaleAxes(true);

    //
    QPen pen3;
    pen3.setWidth(3);
    pen3.setColor(Qt::yellow);
    ui->widget->addGraph();
    QVector<double> x2,y2;
    for(int i=0;i<10;i++)
    {
        x2.push_back(i);
        y2.push_back(i);
    }
    ui->widget->graph(2)->setPen(pen3);
    ui->widget->graph(2)->setData(x2,y2);
    ui->widget->graph(2)->setName("y=x");


    // 添加多组数据的时候,这一句必须放在最后,才能实现坐标轴的自适应
    ui->widget->rescaleAxes(true);

QCustomplot笔记(一)之QCustomplot添加数据以及曲线_第3张图片

你可能感兴趣的:(Qt,ui,qt,开发语言,QCustomplot)