Следующий пример кода должен предоставить вам путь к решению вашей проблемы:
%Create x and y values
x = 1:0.5:20;
y = real((x-15).^2.2.*sin(x)-0.5*x);
%Plot
f1 = figure(1);clf
plot(x,y)
%Calculate derivative
dx = abs(conv(y,[1 -1],'same'));
%Find maximum change
[maxSlope idx] = find(dx==max(dx));
%Display derivative and maximum change points
hold on
plot(x+0.5,dx,'g')
plot(x(idx+1),y(idx+1),'*r')
grid on
legend('Data series','abs(Derivative)','Point of maximum change');
Я создал игрушечный набор данных и нашел точку, где у изменяется больше всего. Обратите внимание, что точки с равным интервалом (x увеличивается линейно) предполагаются здесь. Распределены ли ваши данные равномерно?
Результирующий участок:
![enter image description here](https://i.stack.imgur.com/ccc3v.png)