一、QCustomPlot簡介
之前在Qt之自繪制餅圖這篇文章的說明中我簡單的描述了下目前依賴於qt的第三方繪圖庫,此后我會針對自己使用QCustomPlot的情況做一總結,以方便大家參考
QCustomPlot的官方網址:Qt Plotting Widget QCustomPlot - Introduction
QCustomPlot的源碼只有2個文件,所以添加供自己的工程師特別方便,或者你自己把這兩個文件編譯成靜態庫、動態庫的形式都行。
二、效果預覽
如圖1是我自己把官方的示例代碼融合在一起做的一個小示例,展示了QCustomPlot能畫的圖,唯一美中不足的是QCustomPlot不能畫餅圖,這不也就有了文章開頭說的Qt之自繪制餅圖文章,這篇文章中我使用Qt中原生的QWidget來自己繪制了一個大小可變的餅圖,有興趣的小伙伴可以去看看。
圖1 QCustomPlot使用
看到上面的效果感覺怎么樣呢,是不是還不錯,可以滿足大多數人的需求了,可是如果你們做的產品要求比較嚴格,那么你很可能就需要在QCustomPlot的源碼上進行二次開發,甚至更改源碼。。。
三、源碼下載
如圖2所示,是下載QCustomPlot源碼的方式,紅色框中的文件是包含源碼、示例和幫助文檔的;黃色框中的文件只有源碼;省下的一個文件看名字都知道了,只是一個動態庫而已,那么我們就根據自己的需要來下載了,即使你都下載了也沒事。這里我選擇下載的是第一個,包含了幫助文檔、示例代碼以及源碼。
圖2 QCustomPlot下載
細心的同學就會發現圖2中有兩個版本的QCustomPlot包,為什么會有兩個包呢,其實是這樣的,1.3.2版本是一個發布包,也就是說官方認為這是一個相對來說比較穩定的版本,而2.0.0-beta版本則是一個測試版本,或者說官方把其開源出來只是讓大家幫忙測試,並回饋使用結果。
以上的對比僅僅只是從源碼的發布方式比較的,如果看了源碼你就會發現,其實不僅僅如此,2.0.0-beta版本和1.3.2release版本還是有很大的區別,我個人也研究了幾天的QCustomPlot源碼,我覺着最大的區別應該只有3點,也就是2.0.0版本比1.3.2版本有優勢的地方:真正的分層繪制、圖標數據的分離和坐標軸刻度計算,說到這里我順帶提一嘴,QCustomPlot封裝不好的地方,或者有待改進的地方,說的不對,歡迎指正,對於坐標軸和坐標軸文本是否繪制的判斷條件僅僅是判斷畫筆的類型,對於大小刻度是否繪制的判斷條件僅僅是坐標軸刻度的刻度個數時候為零,郁悶。。。
后續我會分功能點,或者說是具體的類模塊來分析QCustomPlot這個庫,好了,這篇QCustomPlot的開篇文章到此也就基本結束了,有興趣的小伙伴可以繼續關注。。。
注:后續文章都是以QCustomPlot2.2.0beta版本為基礎進行分析
四、相關文章