使用Qt的charts模块来绘制图表,案例来自Qt自带的demo。
charts模块简介:Qt Chars模块提供了一系列容易使用的图表组件。需要使用charts组件时,需要导入Qt Charts模块,通过如下方式:QT += charts
在安装Qt Creator的时候,需要勾选上这个模块,不然是不能使用的。
2 Qt Charts总览Qt Chars支持绘制:坐标图、柱状图、折线图、饼图、曲线图、散点图等。
3 测试及说明
首先创建一个工程,继承至MainWindow组件。
(1)绘制折线图
折线图通过线段展示一系列相关联的点。
使用的类:QLineSeries
测试代码:
1 MainWindow::MainWindow(QWidget *parent) : 2 QMainWindow(parent), 3 ui(new Ui::MainWindow) 4 { 5 ui->setupUi(this); 6 7 /* 8 * LineChart Example 9 */ 10 //添加一个QLineSeries实例 11 QLineSeries *lineseries = new QLineSeries(); 12 //添加数据(点),有两种方式 13 lineseries->append(0, 6); //参数分别为横纵坐标 14 lineseries->append(2, 4); 15 lineseries->append(3, 8); 16 lineseries->append(7, 4); 17 *lineseries << QPointF(11, 1) << QPointF(13, 3) << QPointF(17, 6) << QPointF(18, 3) << QPointF(20, 2); 18 //添加一个QChart实例,为了展示数据 19 QChart *chart = new QChart(); 20 chart->legend()->hide(); //隐藏图例 21 chart->addSeries(lineseries); 22 chart->createDefaultAxes(); 23 chart->setTitle("Simple line chart example"); 24 //添加一个QChartView图例 25 QChartView *chartView = new QChartView(chart); 26 chartView->setRenderHint(QPainter::Antialiasing); //呈现方式 27 //显示 28 this->setCentralWidget(chartView); 29 this->setCentralWidget(chartView); 30 this->resize(400, 300); 31 this->show(); 32 }