0
点赞
收藏
分享

微信扫一扫

关于QCustomPlot交互式图表的使用和案例

小编 2024-03-09 阅读 15

一、下载与使用

(1)文件下载    打开QCustomPlot官网

Qt Plotting Widget QCustomPlot - Download

关于QCustomPlot交互式图表的使用和案例_文件下载

(2)下载完解压后得到以下文件,复制两个文件到项目文件中

关于QCustomPlot交互式图表的使用和案例_缩放_02

(3)在项目中右击选择添加现有文件,将两个文件添加进项目中

关于QCustomPlot交互式图表的使用和案例_Qt_03

关于QCustomPlot交互式图表的使用和案例_缩放_04

(4)Qt版本5.0以上需要在pro文件中添加变量 printsupport

关于QCustomPlot交互式图表的使用和案例_缩放_05

(5)在ui文件中拖一个widget部件,提升为QCustomPlot类

关于QCustomPlot交互式图表的使用和案例_文件下载_06

这里我已经提升过了,所以重新拖一个widget部件,右键提升为

关于QCustomPlot交互式图表的使用和案例_Qt_07

按步骤提升即可,注意拼写错误

关于QCustomPlot交互式图表的使用和案例_缩放_08

(6)提升过后看起来没有任何变化,运行之后可查看效果

关于QCustomPlot交互式图表的使用和案例_文件下载_09

二、基本绘图

(1)创建新画布,代码写入widget.cpp中

customPlot -> addGraph();

(2)在画布上添加数据,以x轴y轴为基准 QCustomPlot更倾向于key值和value值而不是x和y,所以可以使用容器QVector来存放x轴与y轴的数据。

customPlot->graph(0)->setData(x,y);

(3)QCustomPlot有4个轴customPlot->xAxis, yAxis, xAxis2, 和 yAxis2,它们都是QCPAxis类型的,分别对应下、左、上、右。我们可以设置四个轴显示刻度和数字

例如:设置第二x轴(上)设为不可见,不显示刻度。

ui->customPlot->xAxis2->setVisible(false); ui->customPlot->xAxis2->setTickLabels(false);

(4)设置x轴y轴标签

ui->customPlot->xAxis->setLabel("x"); ui->customPlot->yAxis->setLabel("y");

(5)设置第一x轴范围

ui->customPlot->xAxis->setRange(-1,1);

(6)若要对画布进行重绘或修改

ui->customPlot->replot();

(7)允许用户用鼠标拖拉、缩放、选择任一幅图

ui->customPlot->setInteractions(QCP::iRangeDrag | QCP::iRangeZoom |QCP::iSelectPlottables); 

举报

相关推荐

0 条评论