QCustomplot怎么实现对大数据量的自适应采样显示不卡顿
我在之前使用QCustomplot時候,當時需要特別大的數據量的顯示,結果圖像顯示的特別卡頓,CPU占用率也特別高,然后當時在解決時候是自己寫了采樣抽取數據的函數,最后解決的。
然后這回在閱讀手冊時候突然發現QCustomplot提供了一個自適應采樣的函數:
以下為函數使用的翻譯:
設置在繪制此圖時是否應使用自適應采樣。 QCustomPlot的自適應采樣技術可以極大地提高點數較多(例如10,000以上)的圖的重繪性能,而無需顯著更改圖的外觀。
默認情況下,啟用自適應采樣。即使啟用,QCustomPlot也會決定是否應在每幅圖的基礎上實際使用自適應采樣。因此,啟用自適應采樣在幾乎所有情況下都沒有缺點。

帶有和不帶有自適應采樣的500,000點線圖
可以看出,線圖不會因自適應采樣而導致視覺下降。離群值以及數據集的整體形狀都可以可靠地復制。重繪時間大大減少。這使QCustomPlot可以實時顯示大量數據。

帶有和不帶有自適應采樣的100,000點散點圖
將高密度散點圖與自適應采樣結合使用時,必須小心。自適應采樣算法比散點圖更仔細地處理散點圖,這仍然可以顯著減少重復打印時間,但不如折線圖那么多。這是因為散點圖固有地需要保留更多數據點,以便仍然類似于原始的非自適應采樣圖。如上所示,結果仍然不完全相同,因為外部數據點發生了合并。實際上這是有意的,因此數據云的邊界對于查看者保持可見。條帶顯示的強度取決于點密度,即圖中的點數。
因此,對于具有散點圖的某些情況,可能需要手動關閉自適應采樣。例如,將圖保存到磁盤時。這可以通過在發出QCustomPlot :: savePng之類的命令之前將enabled設置為false,然后再將enabled設置回true來實現。
總結
以上是生活随笔為你收集整理的QCustomplot怎么实现对大数据量的自适应采样显示不卡顿的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: QT中在Designer中设置QTool
- 下一篇: QT利用QCustomplot绘制折线图