1、軟件下載php
下載地址:http://www.qcustomplot.com/index.php/download 數組
這裏推薦下載第一個連接的內容:
函數
注:這裏的第三方庫要放在非中文目錄下。ui
2、配置this
(1)、新建工程,而且添加頭文件qcustomplot.h和源文件qcustomplot.cpp。spa
(2)、在工程pro文件末尾添加printsupport:
設計
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets printsupport
(3)、進入圖形設計界面,添加widget控件,對着所添加的widget區域點擊右鍵,選擇「提高爲」按鈕,提高類名稱輸入「QCustomPlot」,點擊添加。code
(4)、運行程序,以下所示:對象
至此,QCustomPlot已經配置完畢。繼承
注:默認狀況下是x:0~4.8,y:0~4.8。
3、繪圖
原理:
QCustomPlot是一個繪圖板的類,它繼承於Widget,界面中的Widget類提高爲QCustomPlot纔可以繪圖。
QCustomPlot中的每個曲線是一個Graph對象,凡是跟顯示數據有關的就對Graph進行操做或調用Graph對象提供的方法。
一個QCustomPlot裏有四個座標軸,其中xAxis和yAxis就是咱們上圖看到的x和y座標軸,還有兩個座標軸xAxis1和yAxis1爲上方和右方的x、y座標,默認隱藏,能夠經過程序設計顯示。
步驟:
(1)、首先將上面提高爲QCustomPlot類的容器界面的對象widget重命名爲qCustomPlot。
(2)、在主類Widget構造函數中添加以下代碼,便可繪製一個標準標準的y=x^3的曲線。
Widget::Widget(QWidget *parent) : QWidget(parent), ui(new Ui::Widget) { ui->setupUi(this); //定義兩個可變數組存放繪圖的座標數據 QVector<double> x(101),y(101);//分別存放x和y座標的數據,101爲數據長度 //添加數據,咱們這裏演示y=x^3,爲了正負對稱,咱們x從-10到+10 for(int i=0;i<101;i++) { x[i] = i/5 - 10; y[i] = x[i] * x[i] * x[i]; } //向繪圖區域QCustomPlot(從widget提高來的)添加一條曲線 ui->qCustomPlot->addGraph(); //添加數據 ui->qCustomPlot->graph(0)->setData(x,y); //設置座標軸標籤名稱 ui->qCustomPlot->xAxis->setLabel("x"); ui->qCustomPlot->yAxis->setLabel("y"); //設置座標軸顯示範圍,不然咱們只能看到默認的範圍 ui->qCustomPlot->xAxis->setRange(-11,11); ui->qCustomPlot->yAxis->setRange(-1100,1100); //重繪,這裏能夠不用,官方例子有,執行setData函數後自動重繪 //我認爲應該用於動態顯示或者是改變座標軸範圍以後的動態顯示,咱們之後探索 //ui->qCustomPlot->replot(); }
圖形以下所示:
說明:若是設置完x、y取值範圍以後,顯示結果仍然爲默認範圍(即x:0~4.8,y:0~4.8),那麼緣由在於沒有把設置代碼放在構造函數中(也就是說構造函數調用的仍然是默認的配置),只須要將初始化代碼放在構造函數中便可。