QCharts记录

简介

记录QT5自带的QCharts绘图库使用,安装的时候记得勾选QCharts。

工程配置

  1. pro文件

添加 QT += charts

  1. h文件

#include <QtCharts>

  1. cpp文件

QT_CHARTS_USE_NAMESPACE //使用QtCharts命名空间

  1. UI设计

拖放一个Widget控件,右键选择提升,提升的类名称填入QChartView,头文件名称保持默认,勾选全局包含,点击添加按钮,选择新添加的类点击提升

折线图

创建图表和数据组的实例

QChart *m_chart = new QChart();
QLineSeries *m_series = new QLineSeries();

图表和数据的加载

    /* 使用append接口填入数据 */
    m_series->append(10,20);
    m_series->append(30,50);

    /* 表格添加数据组 */
    m_chart->addSeries(m_series);
    m_chart->legend()->hide();
    m_chart->setTitle("line");

    /* 坐标轴设置 */
    QValueAxis *axisX = new QValueAxis;
    axisX->setRange(0.0,100.0);
    axisX->setTitleText("X轴");
    m_chart->addAxis(axisX, Qt::AlignBottom);
    m_series->attachAxis(axisX);
    QValueAxis *axisY = new QValueAxis;
    axisY->setRange(0.0,100.0);
    axisY->setTitleText("Y轴");
    m_chart->addAxis(axisY, Qt::AlignLeft);
    m_series->attachAxis(axisY);

    /* 使用控件加载图表 */
    ui->chart->setChart(m_chart);
    ui->chart->setRenderHint(QPainter::Antialiasing);

动态加载数据点

定义QVector<QPointF> point使用push_back接口可以逐渐往point内部增加数据点,QLineSeries的replace接口可以更新关联的数据点

    point.push_back(QPointF(x,y));
    m_series->replace(point);
posted @ 2020-04-09 20:35  怦然心动如往昔  阅读(970)  评论(0编辑  收藏  举报