2

QT の QCustomPlot アドオンを使用します。グラフが次のように見えるように、線形ではない可能性のある点をプロットする必要がありますここに画像の説明を入力

どんだけこれが結果なんだよ

ここに画像の説明を入力

しかし、これが表示されます

このコードを使用して

    plotter->addGraph();
    plotter->graph(0)->setData(xVector, yVector);
    plotter->xAxis->setLabel("X");
    plotter->yAxis->setLabel("Y");
    plotter->xAxis->setRange(x_data_range_min x_data_range_max);
    plotter->yAxis->setRange(y_data_range_min, y_data_range_max);
    plotter->replot();
    plotter->saveJpg("test.jpg");
    plotter->close();

このオプションを追加して、接続された線に乗り、ポイントのみを表示することにより、部分的な修正を見つけました。

    plotter->graph(0)->setLineStyle((QCPGraph::LineStyle)QCPGraph::lsNone);
    plotter->graph()->setScatterStyle(QCPScatterStyle(QCPScatterStyle::ssDisc , 3));

結果はこれですが、問題があります。私にはできない大胆なスポットが残ります

ここに画像の説明を入力

したがって、これは半解決策です。そこで私は先に進み、以下の返信で A. Sarid が言及したことを追加しました。最初のグラフはうまくプロットできると思いますが、それ以降の他のグラフは次のようになります

ここに画像の説明を入力

そのため、配列から受け取った順序でドットのみを接続できるソリューションがわかりません

4

1 に答える 1

2

数日前に同じ問題が発生しました。Graph の代わりにQCPCurve クラスを使用する必要があります。これを行う方法の小さな例を次に示します。

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

次に、グラフを使用するのと同じ方法で使用できます。たとえば、次のようになります。

this->newCurve->setData(x, y);
于 2016-04-21T05:35:47.757 に答える