qcustomplot使用方法

一、QCustomPlot的安裝

官方下載地址:http://www.qcustomplot.com/index.php/download

推薦下載第一個鏈接,裏面有很多官方給的例子可以參考。

 

下載之後將文件解壓到任意一個文件夾中,不要有中文路徑。

打開QT,新建一個窗體工程

將解壓得到的文件夾裏面的頭文件qcustomplot.h和源文件qcustomplot.cpp複製粘貼到工程文件夾下。

在Qt中,對着工程名右鍵,添加已有文件,將頭文件qcustomplot.h和源文件qcustomplot.cpp都添加到工程中來。

接着在工程的pro文件的第9行末尾加入代 printsupport,如下圖

打開界面文件,進入圖形化設計界面,向主窗口中添加一個widget區域,對着所添加的widget區域點擊右鍵,選擇“提升爲”按鈕。

提升類名稱輸入“QCustomPlot”,點擊添加。

在之後的界面中選中QCustomPlot,點擊提升按鈕,我們創建的widget就被提升爲QCustomPlot類了。

現在我們運行一下程序,就會出現一個簡單的座標系了。

恭喜你,QCustomPlot的基本配置就做好了。

二、第一個例子

首先解釋一下原理:

我們可以理解爲QCustomPlot就是一個繪圖板的類,它繼承於Widget,界面中的Widget類提升爲QCustomPlot才能夠繪圖。

QCustomPlot中的每一個曲線是一個Graph對象,凡是跟顯示數據有關的我們就對Graph進行操作或調用Graph對象提供的方法。

一個QCustomPlot裏有四個座標軸,其中xAxisyAxis就是我們上圖看到的x和y座標軸,還有兩個座標軸xAxis1和yAxis1爲上方和右方的x、y座標,默認隱藏,可以通過程序設計顯示。

具體繪圖執行步驟:

首先我們將上面提升爲QCustomPlot類的容器界面的對象重命名爲qCustomPlot。

此時,我們只需要在主類Widget構造函數中加入如下代碼,即可繪製一個標準標準的y=x^3的曲線,代碼含義代碼中有註釋。

 1 Widget::Widget(QWidget *parent) :
 2     QWidget(parent),
 3     ui(new Ui::Widget)
 4 {
 5     ui->setupUi(this);
 6 
 7     //定義兩個可變數組存放繪圖的座標數據
 8     QVector<double> x(101),y(101);//分別存放x和y座標的數據,101爲數據長度
 9     //添加數據,我們這裏演示y=x^3,爲了正負對稱,我們x從-10到+10
10     for(int i=0;i<101;i++)
11     {
12         x[i] = i/5 - 10;
13         y[i] = x[i] * x[i] * x[i];
14     }
15 
16     //向繪圖區域QCustomPlot(從widget提升來的)添加一條曲線
17     ui->qCustomPlot->addGraph();
18     //添加數據
19     ui->qCustomPlot->graph(0)->setData(x,y);
20 
21     //設置座標軸標籤名稱
22     ui->qCustomPlot->xAxis->setLabel("x");
23     ui->qCustomPlot->yAxis->setLabel("y");
24 
25     //設置座標軸顯示範圍,否則我們只能看到默認的範圍
26     ui->qCustomPlot->xAxis->setRange(-11,11);
27     ui->qCustomPlot->yAxis->setRange(-1100,1100);
28     
29     //重繪,這裏可以不用,官方例子有,執行setData函數後自動重繪
30     //我認爲應該用於動態顯示或者是改變座標軸範圍之後的動態顯示,我們以後探索
31     //ui->qCustomPlot->replot();
32 
33 }

這樣我們就簡單的繪製好一個3次方的曲線了

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章