В текущем приложении у нас есть 1000 точек данных, которые используются для построения графика с использованием библиотеки Cairo. Он генерирует файл графа, но в графике есть превышение. Мне нужно убрать это превышение или недостижение из графика. Я слышал, что люди используют теорему отсчетов для устранения недопущения или перерегулирования.
Приложение написано на C ++. Дайте мне знать, если мне нужно предоставить больше информации.
Я попытался использовать следующий код, чтобы удалить это перерегулирование (я не мог понять код ниже)
int samplesize = 4;
double prevSample = 0;
double prevslope = 0;
int thePoint = 0;
for (unsigned int i = samplesize, j = startXIndex; i < endXIndex; i++, j++) {
double sample = 0;
for (unsigned int k = j; k <= i; k++) {
sample += (xvals[k]*xvals[k]);
}
sample /= (i-j);
sample = sqrt(sample);
double slope = atan(prevSample-sample);
if (((prevslope <= 0 && slope > 0) || (prevslope >= 0 && slope < 0))) {
thePoint = j;
}
prevslope = slope;
prevSample = sample;
}
lowX = xvals[thePoint];
Может кто-нибудь предоставить мне вход для решения этой проблемы.
Задача ещё не решена.