精华内容
下载资源
问答
  • 基于QT曲线图绘制

    2018-12-28 09:49:23
    本工程是一个基于QT曲线图绘制,在没有调用Charts库的情况下,采用自绘的方式绘制的,简单实用,是一个完整的工程;如果编译环境正常的话,可以直接使用,注释也比较详细
  • QT绘制直方BarChart QT绘制饼状PieChart QT绘制折线LineChart QT绘制散点ScatterChart QT绘制面积AreaChart 0.创建ui窗口: 主要就是拖拉一个Horizontal Layout 1.创建Qchart对象: QChart *chart = new...

    相关链接:
    QT绘制直方图BarChart
    QT绘制饼状图PieChart
    QT绘制折线图LineChart
    QT绘制散点图ScatterChart
    QT绘制面积图AreaChart

    0.创建ui窗口:

    主要就是拖拉一个Horizontal Layout
    在这里插入图片描述
    在这里插入图片描述

    1.创建Qchart对象:

    QChart *chart = new QChart();
    chart->setTitle("折线图图演示"); //设置表格标题
    
    

    2.创建QSplineSeries对象:

    QSplineSeries *series1 = new QSplineSeries(chart);
    QSplineSeries *series2 = new QSplineSeries(chart);
    // 
    series1->setName("A店铺接单数");
    series2->setName("B店铺接单数");
    // 设置节点数值
    *series1 << QPointF(0,4) << QPointF(2,7) << QPointF(3,9) << QPointF(8,13) << QPointF(9,16);
    *series2 << QPointF(0,1) << QPointF(3,4) << QPointF(4,7) << QPointF(6,11) << QPointF(8,15)<< QPointF(9,18);
    

    3.将QSplineSeries添加到QChart

    chart->addSeries(series1);
    chart->addSeries(series2);
    
    

    4.图表综合效果设置:

    //设置动画效果
    chart->setAnimationOptions(QChart::AllAnimations);
    
    chart->createDefaultAxes();//设置网格线
    chart->axes(Qt::Horizontal).first()->setRange(0, 7);//设置x轴范围
    chart->axes(Qt::Vertical).first()->setRange(0, 20);//设置y轴范围
    
    // Add space to label to add space between labels and axis 在标签和轴之间加空格
    QValueAxis *axisY = qobject_cast<QValueAxis*>(chart->axes(Qt::Vertical).first());
    Q_ASSERT(axisY);
    axisY->setLabelFormat("%.1f  ");
    
    //设置图表主题(会修改到扇区的颜色)
    // 可选: QChart::ChartThemeLight
    // QChart::ChartThemeBlueCerulean
    // QChart::ChartThemeDark
    // QChart::ChartThemeBrownSand
    // QChart::ChartThemeBlueNcs
    // QChart::ChartThemeHighContrast
    // QChart::ChartThemeBlueIcy
    // QChart::ChartThemeQt
    chart->setTheme(QChart::ChartThemeDark);
    

    5.显示图表:

    QChartView *chartView;
    chartView = new QChartView(chart);
    ui->verticalLayout->insertWidget(chartView);
    

    代码整体呈现:

    mainwindow.h

    #ifndef MAINWINDOW_H
    #define MAINWINDOW_H
    
    #include <QMainWindow>
    #include <QtCharts>
    
    QT_BEGIN_NAMESPACE
    namespace Ui { class MainWindow; }
    QT_END_NAMESPACE
    
    QT_CHARTS_BEGIN_NAMESPACE
    class QChartView;
    class QChart;
    QT_CHARTS_END_NAMESPACE
    
    QT_CHARTS_USE_NAMESPACE
    
    class MainWindow : public QMainWindow
    {
        Q_OBJECT
    
    public:
        MainWindow(QWidget *parent = nullptr);
        ~MainWindow();
        QChart * createSplineChart() const; // 绘制自定义的曲线图
    private:
        Ui::MainWindow *ui;
    };
    #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);
    
    	// 创建QChartView 对象
    	QChartView *chartView;
    	// QChartView 对象载入曲线图
    	chartView = new QChartView(createSplineChart());
    	// 显示图标
    	ui->verticalLayout->insertWidget(chartView);
    
    }
    
    MainWindow::~MainWindow()
    {
        delete ui;
    }
    
    //绘制曲线图
    QChart *MainWindow::createSplineChart() const
    {
        QChart *chart = new QChart();
        chart->setTitle("曲线图演示");
    
    
        QSplineSeries *series1 = new QSplineSeries(chart);
        QSplineSeries *series2 = new QSplineSeries(chart);
        series1->setName("A店铺接单数");
        series2->setName("B店铺接单数");
        *series1 << QPointF(0,4) << QPointF(2,7) << QPointF(3,9) << QPointF(8,13) << QPointF(9,16);
        *series2 << QPointF(0,1) << QPointF(3,4) << QPointF(4,7) << QPointF(6,11) << QPointF(8,15)<< QPointF(9,18);
    
        chart->addSeries(series1);
        chart->addSeries(series2);
    
    
        chart->createDefaultAxes();
        chart->axes(Qt::Horizontal).first()->setRange(0, 9);
        chart->axes(Qt::Vertical).first()->setRange(0, 20);
    
        // Add space to label to add space between labels and axis 在标签和轴之间加空格
        QValueAxis *axisY = qobject_cast<QValueAxis*>(chart->axes(Qt::Vertical).first());
        Q_ASSERT(axisY);
        axisY->setLabelFormat("%.1f  ");
        chart->setTheme(QChart::ChartThemeLight);
        return chart;
    }
    

    在这里插入图片描述

    演示代码
    链接:https://pan.baidu.com/s/1LkdFXi6LSvYtbU0W3uz0TQ
    提取码:marl

    展开全文
  • 随机生成一组数据,QT用Qpainter绘制实时曲线图最简单的折线图
  • 此demo是基于 Qt5.9 Qt Charts 绘制曲线统计,适用于初学者,下载源码可直接运行;文章里有详细说明(https://blog.csdn.net/weixin_45629870/article/details/108778754)
  • Qt绘制实时曲线图形简单例程 - Qt实时绘图

    万次阅读 多人点赞 2018-06-22 18:04:34
    本来是想写一篇上位机通过串口接收数据并进行简单实时动态画图的,但是网上关于Qt串口接收数据的博客已经非常多了,... 使用Qt绘制图形,首先需要了解Qt的窗口与视口的概念,理解Qt的坐标变换,然后学会掌握Qpaint...

           本来是想写一篇上位机通过串口接收数据并进行简单实时动态画图的,但是网上关于Qt串口接收数据的博客已经非常多了,且也会导致内容太多,显得复杂,如果需要串口收发数据例程,网上随便百度就能收到了,也可以下载我写的北斗/GPS双模定位上位机,这里主要介绍一下收到数据后的画图实现。
           使用Qt绘制图形,首先需要了解Qt的窗口与视口的概念,理解Qt的坐标变换,然后学会掌握Qpainter这个类的使用就能实现基本的绘图功能了。下面一个实时绘制曲线图形的例子(坐标用应该直接使用一个Qpoint模板的列表表示比较好)。这里,实时数据只是由使用creatData函数产生,在实际工程中将数据改为读取实时数据即可。

    头文件

    #ifndef WIDGET_H
    #define WIDGET_H
    
    #include <QWidget>
    #include <QTimer>
    #include <QList>
    
    class Widget : public QWidget
    {
        Q_OBJECT
    
    protected:
        void paintEvent(QPaintEvent *);
    public:
        int m_count;
        float x;
        QTimer* m_Timer;
        QList<float> xList;
        QList<float> yList;
    
        Widget(QWidget *parent = 0);
        ~Widget();
    
    public slots:
        void creatData();
    
    };
    
    #endif // WIDGET_H

    源文件

    #include "Widget.h"
    #include <QPainter>
    #include <QPointF>
    #include <QPen>
    #include <qmath.h>
    Widget::Widget(QWidget *parent) : QWidget(parent)
    {
        x = -10;
        m_count = 0;
        m_Timer = new QTimer(this);
        m_Timer->start(10);
        connect(m_Timer,SIGNAL(timeout()),this,SLOT(creatData()));
    }
    void Widget::creatData()
    {
        x += 0.2;
        m_count += 1;
        if(m_count%2)
        {
            xList.append(x);
            yList.append(qSin(x));
        }
        else
        {
            xList.append(x);
            yList.append(qSin(x));
            update();
        }
        if(m_count == 100)
        {
            xList.clear();
            yList.clear();
            m_count = 0;
            x = -10;
        }
    }
    void Widget::paintEvent(QPaintEvent *)
    {
        QPainter painter(this);
        QPen pen;
        pen.setColor(Qt::green);
        pen.setStyle(Qt::SolidLine);
        pen.setWidthF(0.05);
        painter.setPen(pen);
        painter.setViewport(50, 50, width()-100, height()-100);
        painter.setWindow(-10, 2, 20, -4); // (-10, 2)    (10, -2)
        painter.fillRect(-10, 2, 20, -4, Qt::white);
        painter.drawLine(QPointF(-10, 0), QPointF(10, 0));   // x
        painter.drawLine(QPointF(0, 2), QPointF(0, -2));     // y
        for(int i = 0; i < yList.count(); i++)
        {
            if(i == 0)
                painter.drawPoint(QPointF(xList[i], yList[i]));
            else
                painter.drawLine(QPointF(xList[i-1], yList[i-1]), QPointF(xList[i], yList[i]));
        }
    }
    Widget::~Widget()
    {
        
    }

    主函数

    #include <QApplication>
    #include "Widget.h"
    int main(int argc, char *argv[])
    {
        QApplication a(argc, argv);
        Widget w;
        w.show();
        
        return a.exec();
    }
    展开全文
  • qt绘制曲线

    2018-12-11 09:18:59
    qt中绘制过指定点集的曲线 功能:1.过指定点集 2.绘制曲线 可能问题:曲线不够平滑
  • Qt简单曲线图绘制(Qt5.9 Qt Charts)

    千次阅读 多人点赞 2020-09-24 17:36:09
    (Qt简单曲线图绘制(源码) Qt5.9 Qt Charts)

    Qt简单曲线图绘制(Qt5.9 Qt Charts)

    效果图:
    在这里插入图片描述

    首先创建工程

    在这里插入图片描述工程建立以后进入Mainwindow.ui设计界面,如下图所示:
    在这里插入图片描述关键的控件和控件命名已经详细标出,照着弄就完事儿了。废话不多说上代码:
    在.pro 包含:QT += charts

    mainwindow.h 代码

    #ifndef MAINWINDOW_H
    #define MAINWINDOW_H
    
    #include <QMainWindow>
    #include <QtCharts/QChart>
    using namespace QtCharts;
    
    QT_BEGIN_NAMESPACE
    namespace Ui { class MainWindow; }
    QT_END_NAMESPACE
    
    class MainWindow : public QMainWindow
    {
        Q_OBJECT
    
    public:
        MainWindow(QWidget *parent = nullptr);
        ~MainWindow();
    
    private slots:
        void on_btnSlineColor_clicked();
    
        void on_btnSplinePointColor_clicked();
    
        void on_chkDataPoint_stateChanged(int arg1);
    
        void on_chkDataPointLabelVisible_stateChanged(int arg1);
    
    
    private:
        //创建光滑曲线序列
        void createQSplineSeries();
    private:
        Ui::MainWindow *ui;
        int i = 0;
        QList<QString *> m_charts;
        QStringList two;
        QStringList one;
        QStringList five;
    };
    #endif // MAINWINDOW_H
    
    

    mainwindow.cpp 代码

    #include "mainwindow.h"
    #include "ui_mainwindow.h"
    #include <QLineSeries>
    #include <QSplineSeries>
    #include <QValueAxis>
    #include <QCategoryAxis>
    #include <QColorDialog>
    
    MainWindow::MainWindow(QWidget *parent)
        : QMainWindow(parent)
        , ui(new Ui::MainWindow)
    {
        ui->setupUi(this);
    
        ui->tableWidget->setColumnCount(3);
        QStringList headText = QStringList() << QStringLiteral("星期") << QStringLiteral("最低温度(°C)") << QStringLiteral("最高温度(°C)");
        ui->tableWidget->setHorizontalHeaderLabels(headText);
        ui->tableWidget->horizontalHeader()->setSectionResizeMode(QHeaderView::Stretch);
        //设置行数
        ui->tableWidget->setRowCount(7);
    
        two <<"周一"<<"周二"<<"周三"<<"周四"<<"周五"<<"周六"<<"周七";
    
        one <<"4"<<"2"<<"5"<<"1"<<"5"<<"2"<<"5";
    
        five <<"11"<<"12"<<"18"<<"14"<<"15"<<"18"<<"17";
    
        for(int i=0;i<7;i++)
        {
            int col = 0;
            ui->tableWidget->setItem(i,col++,new QTableWidgetItem(two.at(i)));
            ui->tableWidget->setItem(i,col++,new QTableWidgetItem(one.at(i)));
            ui->tableWidget->setItem(i,col++,new QTableWidgetItem(five.at(i)));
        }
        createQSplineSeries();
    
    }
    
    void MainWindow::createQSplineSeries()
    {
    
        ui->chartViewQSpline->setRenderHint(QPainter::Antialiasing);
        ui->chartViewQSpline->chart()->setTitle(QStringLiteral("QSplineSeries演示"));
        ui->chartViewQSpline->chart()->setTheme(QChart::ChartThemeDark);
        //创建光滑曲线序列,并添加数据
        QSplineSeries *spLineSeries = new QSplineSeries;
        spLineSeries->setName(QStringLiteral("最高温"));
        for (int i = 0; i < ui->tableWidget->rowCount(); i++)
        {
            spLineSeries->append(i, ui->tableWidget->item(i, 2)->text().toInt());
        }
        ui->chartViewQSpline->chart()->addSeries(spLineSeries);
        //创建坐标轴
        QValueAxis *axisX = new QValueAxis;
        axisX->setRange(0, 6);
        axisX->setTickCount(7);
        axisX->setLabelsVisible(false);//x轴坐标显示
        QValueAxis *axisY = new QValueAxis;
        axisY->setRange(0, 40);
        ui->chartViewQSpline->chart()->setAxisX(axisX, spLineSeries);
        ui->chartViewQSpline->chart()->setAxisY(axisY, spLineSeries);
    
        //创建折现序列,并添加数据
        QLineSeries *lineSeries = new QLineSeries;
        lineSeries->setName(QStringLiteral("最低温"));
        for (int i = 0; i < ui->tableWidget->rowCount(); i++)
        {
            lineSeries->append(i, ui->tableWidget->item(i, 1)->text().toInt());
        }
        ui->chartViewQSpline->chart()->addSeries(lineSeries);
        ui->chartViewQSpline->chart()->setAxisX(axisX, lineSeries);
        ui->chartViewQSpline->chart()->setAxisY(axisY, lineSeries);
        //显示曲线的数据点
        lineSeries->setPointsVisible(true);
        spLineSeries->setPointsVisible(true);
        //图例
        ui->chartViewQSpline->chart()->legend()->setAlignment(Qt::AlignBottom);
    }
    
    void MainWindow::on_btnSlineColor_clicked()
    {//设置光滑曲线:线条颜色
        QLineSeries *lineSeries = (QLineSeries *)ui->chartViewQSpline->chart()->series().at(1);
        QColor color = lineSeries->pen().color();
        color = QColorDialog::getColor(color);
        QPen pen = lineSeries->pen();
        pen.setColor(color);
        lineSeries->setPen(pen);
    }
    
    void MainWindow::on_btnSplinePointColor_clicked()
    {//设置光滑曲线:数据点颜色
        QSplineSeries *splineSeries = (QSplineSeries *)ui->chartViewQSpline->chart()->series().at(0);
        QColor color = splineSeries->pen().color();
        color = QColorDialog::getColor(color);
        QPen pen = splineSeries->pen();
        pen.setColor(color);
        splineSeries->setPen(pen);
    }
    
    void MainWindow::on_chkDataPoint_stateChanged(int arg1)
    {//设置光滑曲线:数据点显示
        QLineSeries *lineSeries = (QLineSeries *)ui->chartViewQSpline->chart()->series().at(0);
        QSplineSeries *splineSeries = (QSplineSeries *)ui->chartViewQSpline->chart()->series().at(1);
        if (Qt::Checked == arg1)
        {
            lineSeries->setPointsVisible(true);
            splineSeries->setPointsVisible(true);
        }
        else
        {
            lineSeries->setPointsVisible(false);
            splineSeries->setPointsVisible(false);
        }
    }
    
    void MainWindow::on_chkDataPointLabelVisible_stateChanged(int arg1)
    {//设置光滑曲线:数据点标签显示
        QLineSeries *lineSeries = (QLineSeries *)ui->chartViewQSpline->chart()->series().at(0);
        QSplineSeries *splineSeries = (QSplineSeries *)ui->chartViewQSpline->chart()->series().at(1);
        if (Qt::Checked == arg1)
        {
            lineSeries->setPointLabelsVisible(true);
            splineSeries->setPointLabelsVisible(true);
        }
        else
        {
            lineSeries->setPointLabelsVisible(false);
            splineSeries->setPointLabelsVisible(false);
        }
    }
    
    MainWindow::~MainWindow()
    {
        delete ui;
    }
    

    下载地址:源代码下载
    觉得有用的小伙伴不要吝啬你们赞哟~()

    展开全文
  • QT简单曲线图绘制(基于QChart)

    千次阅读 2020-08-12 22:02:49
    本例指定一系列离散点,可绘制曲线图,并可将图表嵌入widget中(本例嵌入了mainwi) 效果如下: 本例曲线图绘制使用QT的QChart模块实现(QT5.7及其以上版本才有此功能),自行封装了Chart类, 调用如下: .pro工程...

    本例指定一系列离散点,可绘制曲线图,并可将图表嵌入QWidget中
    效果如下:
    在这里插入图片描述
    本例曲线图绘制使用QT的QChart模块实现(QT5.7及其以上版本才有此功能),自行封装了Chart类,
    调用如下:

    .pro工程文件:

    #-------------------------------------------------
    #
    # Project created by QtCreator 2020-08-12T20:05:22
    #
    #-------------------------------------------------
    
    QT       += core gui
    QT       += charts
    
    greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
    
    TARGET = QCharts_Test
    TEMPLATE = app
    
    DEFINES += QT_DEPRECATED_WARNINGS
    
    SOURCES += \
            main.cpp \
            mainwindow.cpp \
        chart.cpp
    
    HEADERS += \
            mainwindow.h \
        chart.h
    
    FORMS += \
            mainwindow.ui
    
    

    mainwindow.h文件:

    #ifndef MAINWINDOW_H
    #define MAINWINDOW_H
    
    #include <QMainWindow>
    #include "chart.h"
    
    namespace Ui {
    class MainWindow;
    }
    
    class MainWindow : public QMainWindow
    {
        Q_OBJECT
        Chart *chart;
    public:
        explicit MainWindow(QWidget *parent = 0);
        ~MainWindow();
        void initChart();
    
    private:
        Ui::MainWindow *ui;
    };
    
    #endif // MAINWINDOW_H
    
    

    mainwindow.cpp文件:

    MainWindow::MainWindow(QWidget *parent) :
        QMainWindow(parent),
        ui(new Ui::MainWindow)
    {
        ui->setupUi(this);
        initChart();
    }
    
    MainWindow::~MainWindow()
    {
        delete ui;
    }
    //初始化图表
    void MainWindow::initChart()
    {
        //设置表头
        chart = new Chart(this,"历史数据");
        //设置坐标系
        chart->setAxis("X轴",0,100,11, "Y轴",0,20,11);
        //设置离散点数据
        QList<QPointF> pointlist = {QPointF(0,1), QPointF(10,2), QPointF(20,4), QPointF(30,8), QPointF(40,16), \
                                    QPointF(50,16), QPointF(60,8), QPointF(70,4), QPointF(80,2), QPointF(90,1),};
        //绘制
        chart->buildChart(pointlist);
        //为MainWindow的centralWidget添加一个布局
        QHBoxLayout *pHLayout = new QHBoxLayout(ui->centralWidget);
        //将chart添加到布局中
        pHLayout->addWidget(chart);
    }
    

    最后是Chart类的实现:

    chart.h

    #ifndef CHART_H
    #define CHART_H
    
    #include <QChartView>
    #include <QChart>
    #include <QSplineSeries>
    #include <QHBoxLayout>
    #include <QValueAxis>
    
    QT_CHARTS_USE_NAMESPACE
    class Chart : public QWidget
    {
        Q_OBJECT
        QChart *qchart;
        QChartView *chartview;
        QSplineSeries *series;
    
        QHBoxLayout *layout;
        QValueAxis *axisX;
        QValueAxis *axisY;
    
        QString chartname;
        //坐标轴参数
        QString xname;
        qreal xmin;
        qreal xmax;
        int xtickc;
        QString yname;
        qreal ymin;
        qreal ymax;
        int ytickc;
    
    public:
        Chart(QWidget* parent = 0, QString _chartname = "曲线图");
        ~Chart(){}
        void setAxis(QString _xname, qreal _xmin, qreal _xmax, int _xtickc, \
                     QString _yname, qreal _ymin, qreal _ymax, int _ytickc);
        void buildChart(QList<QPointF> pointlist);
    
    };
    #endif // CHART_H
    
    

    chart.cpp

    #include "chart.h"
    
    Chart::Chart(QWidget* parent, QString _chartname){
        setParent(parent);
        chartname = _chartname;
        series = new QSplineSeries(this);
        qchart = new QChart;
        chartview = new QChartView(qchart);
        layout = new QHBoxLayout(this);
        axisX = new QValueAxis(this);
        axisY = new QValueAxis(this);
        //在ui里面添加了一个Widget并把曲线图添加进去
        layout->addWidget(chartview);
        setLayout(layout);
        chartview->setRenderHint(QPainter::Antialiasing);//防止图形走样
    }
    
    void Chart::setAxis(QString _xname, qreal _xmin, qreal _xmax, int _xtickc, \
                 QString _yname, qreal _ymin, qreal _ymax, int _ytickc){
        xname = _xname; xmin = _xmin; xmax = _xmax; xtickc = _xtickc;
        yname = _yname; ymin = _ymin; ymax = _ymax; ytickc = _ytickc;
    
        axisX->setRange(xmin, xmax);    //设置范围
        axisX->setLabelFormat("%u");   //设置刻度的格式
        /************************************
            %u 无符号十进制整数
            %s 字符串
            %c 一个字符
            %d 有符号十进制整数
            %e 浮点数、e-记数法
            %f 浮点数、十进制记数法
            %s 字符串
        ****************************************/
            axisX->setGridLineVisible(true);   //网格线可见
            axisX->setTickCount(xtickc);       //设置多少个大格
            axisX->setMinorTickCount(1);   //设置每个大格里面小刻度线的数目
            axisX->setTitleText(xname);  //设置描述
            axisY->setRange(ymin, ymax);
            axisY->setLabelFormat("%u");
            axisY->setGridLineVisible(true);
            axisY->setTickCount(ytickc);
            axisY->setMinorTickCount(1);
            axisY->setTitleText(yname);
            qchart->addAxis(axisX, Qt::AlignBottom); //下:Qt::AlignBottom  上:Qt::AlignTop
            qchart->addAxis(axisY, Qt::AlignLeft);   //左:Qt::AlignLeft    右:Qt::AlignRight
    }
    
    void Chart::buildChart(QList<QPointF> pointlist)
    {
        //创建数据源
        series->setPen(QPen(Qt::blue,3,Qt::SolidLine));
        series->clear();
        for(int i=0; i<pointlist.size();i++)
            series->append(pointlist.at(i).x(), pointlist.at(i).y());
    
        qchart->setTitle(chartname);
        qchart->setAnimationOptions(QChart::SeriesAnimations);//设置曲线动画模式
        qchart->legend()->hide(); //隐藏图例
        qchart->addSeries(series);//输入数据
        qchart->setAxisX(axisX, series);
        qchart->setAxisY(axisY, series);
    }
    
    
    展开全文
  • QT绘制实时动态曲线

    热门讨论 2013-04-13 23:06:16
    QT编写实时动态曲线资料,可以作入门资料看一下
  • QT5 实时曲线绘制

    2018-08-05 16:08:22
    QT5中绘制实时曲线,利用随机数据产生数据绘制,最长记录时间为30分钟。
  • //在项目中添加qcustomplot.h 与 qcustomplot.cpp,并在.pro文件中添加QT += widgets printsupport 这是因为qcustomplot基于图片输出功能 //头文件定义了QCustomPlot *m_QcustomPlot; //头文件包含了#include ...
  • QT系列之曲线图绘制(推荐QCustomPlot)

    千次阅读 多人点赞 2020-04-12 11:17:36
    一个好的曲线图应该具有的功能: 1.美观——背景,线条颜色,线条宽度,字体,边框间距,坐标轴间隔; 2.以鼠标为中心进行缩放,以及重置曲线图; 3.显示鼠标点所在坐标值; 4.图中曲线的名称图例; 5.支持拖拽...
  • Qt实现动态曲线图

    2017-02-26 20:30:27
    使用的是Qt4开发,经过实际的测试完全可以用,使用Qt5,只需简单的修改头文件也可以用。 在本人的博客中也有详细的程序解读,和开发的重要注意。
  • 使用QT动态绘制动态曲线,亲自调试成功 支持最新QT版本QT5.0 实时绘制,实时显示,生产随机数,绘制波形 (Use QT dynamic mapping dynamic curve, personally successful commissioning Support for the latest version...
  • Qt Charts 动态实时绘制各种曲线图

    万次阅读 多人点赞 2019-09-09 14:17:25
    Qt Charts发布之前,Qt比较著名两个画图插件是 qwt和Qcustom, 其中Qcustom较轻量,只需要在project 中包含qcustomplot.h 和qcustomplot.cpp 几乎就可以使用。 相比Qcustom,qwt功能更为强大,但是它的安装十分...
  • Qt绘制曲线

    万次阅读 2016-08-19 08:43:03
    Qt的图形界面很厉害,之前的项目中用到的都是Qt的一些简单的应用,通过绘制曲线才对Qt的图形有了初步的了解。原来我也可以画出美丽平滑的余弦曲线。 1 坐标转换 (1)坐标系的认识 在绘制曲线之前,先要...
  • QChart 绘制饼状曲线、条形,并保存曲线图形
  • Qt绘制动态曲线图

    千次阅读 2020-05-12 21:45:31
    * 绘制鼠标跟随 */ void CustomCurceMaster::drawLine(QPainter *painter) { painter->save(); //painter->setPen(QColor("#FFFFFF")); painter->setBrush(QBrush(QColor("#E33E33"))); .
  • 实现QtCharts曲线图移动和缩放。这个资源描述怎么就要求要50个字了嘿
  • 相关文章请看:https://blog.csdn.net/bwangk/article/details/82082133
  • 利用QT的QWT库,讲串口数据实时的绘制出来,该代码完好,能生成exe
  • Qt 绘制 Smith chart 源码

    2021-01-19 00:48:12
    Qt5.11.3 QPainter绘制 史密斯圆(Smith chart) 小程序 可以通过导入txt绘制smith chart 源码 编译就能用
  • 应用QT和贝塞尔曲线绘制复杂曲线

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 3,965
精华内容 1,586
关键字:

qt绘制曲线图