2016-10-09 9 views
2

いくつかの例のポイントである:私は順番にラインでこれらの点をプロットしたいQCustomPlot QT5を使用して複数の点をプロットする方法は?ここで

(1,1),(2,3),(3,1),(4,2),(1,5),(3,4) 

、私はベクトルxyにそれらを追加しました。次にsetData(x,y)を行った。
しかし、QCustomPlotは、x軸の順番で点をプロットできるようです。 ポイントが自動的にsetData(x,y)でソートされていることに気付きました。

これらの点を元の順序でプロットするにはどうすればよいですか?

答えて

0

あなたが探しているのは、グラフの代わりにQCPCurveです。

定義:

QCPCurve *newCurve; 

そして実行して、それを開始:

this->newCurve = new QCPCurve(ui->customPlot->xAxis, ui->customPlot->yAxis); 
ui->customPlot->addPlottable(this->newCurve); 

を次にあなたがグラフで行ったのと同じ方法でそれを使用することができた:

QVector<double> x, y; 
//... 
this->newCurve->setData(x, y); 

も参照してくださいこの例:Parametric Curves Demo

+0

ありがとうございました。それは本当に役立ちます! – wuhanmoon

+0

@wuhanmoonこの回答があなたの質問を解決した場合は、[受諾](http://meta.stackexchange.com/q/5234/179419)の横の* V *マークをクリックしてください。これは、あなたが解決策を見つけ出し、回答者とあなた自身の両方に評判を与えていることを広範なコミュニティに示します。 –

0

A. Saridのヘルプに基づいて、私はデモ(11)でQCPCurveの使い方を見つけました。 QCPCurveとQCPGraphの違いは、1つのxがQCPCurveで異なるyに対応できることです。 コードを追加してください:

QCPCurve * newCurve =新しいQCPCurve(ui-> customPlot-> xAxis、ui-> customPlot-> yAxis); newCurve-> setData(x、y);

A. Saridに感謝します。

関連する問題