上ノープロット更新私はqwtplotに基づいて、私のプロットクラスを使用して、コードをここに見ることができます: https://github.com/pospiech/code/tree/master/libdev/plot/plottools/trunk/srcqwtplot:再プロット
このコードは、他のアプリケーションで使用され、ここで私はqwtplotクラス(QMatrixPlot)を作成し、データを追加しますそして
plot2DAmplitude->setMatrixData(QVector<double>::fromStdVector(dataAmplitude),
xaxis.size(),
QwtInterval(xaxis.front(), xaxis.back()),
QwtInterval(yaxis.front(), yaxis.back()));
plot2DAmplitude->replot();
setMatrixData
再プロットを呼び出すことは、次のコードです:
void setMatrixData(const QVector<double> &values, int numColumns, QwtInterval xAxisRange, QwtInterval yAxisRange)
{
m_MatrixRasterData->setInterval(Qt::XAxis, xAxisRange);
m_MatrixRasterData->setInterval(Qt::YAxis, yAxisRange);
double minValue = *std::min_element(std::begin(values), std::end(values));
double maxValue = *std::max_element(std::begin(values), std::end(values));
m_MatrixRasterData->setInterval(Qt::ZAxis, QwtInterval(minValue, maxValue));
m_MatrixRasterData->setValueMatrix (values, numColumns);
d_spectrogram->setData(m_MatrixRasterData);
const QwtInterval zInterval = d_spectrogram->data()->interval(Qt::ZAxis);
setAxisScale(QwtPlot::yRight, zInterval.minValue(), zInterval.maxValue());
QwtScaleWidget *axis = axisWidget(QwtPlot::yRight);
axis->setColorMap(zInterval, QColorMap::map(d_mapType));
}
これは動作します - 一度。 異なるコードの2番目の呼び出しは何も行いませんが、同じコードが呼び出されます。オンにすると、データが更新されます。
Qwtはバージョン6.1.3です。私が最小限の例を終えると、私はこの記事を更新します。
おそらく同じ問題の別の例を次に示します。https://stackoverflow.com/questions/34948704/qwt-plot-is-not-reploting/34949185#34949185しかし、 'plot-> setAutoReplot(true);'は私にとっては解決しませんでした。問題は、データがプロットのために利用可能な場合、単にguiで更新されないということです。 –