[英]QCustomPlot: How to update data of a graph?
我使用QCustomPlot顯示圖片的直方圖。 我用來設置曲線的函數如下:
void SingleHistogram::setHist(const QVector<double> &x,
const QVector<double> &y)
{
//clearGraphs();
graph(0)->setData(x, y);
graph(0)->rescaleAxes(true);
replot();
}
它適用於我打開的第一張照片:
但是當我使用相同的函數設置新的直方圖時,第一條曲線不會被刪除(即使setData()
調用圖的clearData()
方法):
如您所見,第二條曲線(峰值)被添加到圖表中。
我不想刪除和重建新的QCPGraph
以提高效率,因為我覺得它沒用。
有人能告訴我這里我做錯了什么嗎?
謝謝!
出於好奇,你要清除你的向量x,y嗎? 如果沒有,你應該在加載新圖表之前清除它們。
代碼看起來有點像
// Graph 1
setHist(x,y); // set graph
//
// ..Some code
//
//before loading new values
x.clear();
y.clear();
// Graph 2
// Fill up new values
// x=[],y=[]
// set NEW graph
setHist(x,y);
實際上,我發現我提供的輸入數據圖包含2組值。 所以每個x坐標都有2 y值。
有趣的是,在這種情況下,QCustom圖將產生這種圖形!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.