Как очистить кривые QwtPlot перед реплоттингом?

В более ранних версиях Qwt мы добавляем QwtPlot::clear() но сейчас я не могу его найти.

Есть идеи? У меня есть график в реальном времени, поэтому при реплоттинге информация до xmin не очень важна, и со временем происходит сбой, поскольку реплот повторяет всю информацию до xmin.

5

Решение

Метод Qwtplot::clear() был объявлен устаревшим использование QwtPlotDict::detachItems вместо.

void QwtPlotDict::detachItems(int rtti = QwtPlotItem::Rtti_PlotItem,
bool autoDelete = true
)

Параметры:

RTTI: В случае QwtPlotItem :: Rtti_PlotItem отсоединить все элементы, в противном случае только те элементы типа rtti.
Автоудаление: Если true, удалите все отдельные элементы

5

Другие решения

Один из способов очистить график — установить пустые точки данных:
например:
(m_vctTime, m_vctValue -vector)
(кривая = новый QwtPlotCurve ())
(plot = new QwtPlot (parent))

m_vctTime.clear();
m_vctValue.clear();
curve->setSamples(m_vctTime,m_vctValue);
plot->replot();

это очищает ваш заговор

1

По вопросам рекламы [email protected]