Rotate set of data points

1 vue (au cours des 30 derniers jours)
Abhishek Mishra
Abhishek Mishra le 13 Jan 2023
Commenté : Abhishek Mishra le 13 Jan 2023
I have a velocity curve which I need to rotate such that the right end remains at the same position where as the left end is rotated to 0 value(y-coordinate). How can I achieve this keeping the curve profile same?

Réponse acceptée

Mathieu NOE
Mathieu NOE le 13 Jan 2023
hello
see below
the home made solution performs better than built in detrend matlab function (even with 'linear' argument)
%% dummy data
N=1000; % Number of data points
t=[0:1:N-1]/N;
y = 1.5*(1 - t);
y2=sin(20*t)+y;
y(100:N-100) = y2(100:N-100);
%% solution 1
ynew1 = detrend(y,'linear');
%% solution 2 (home made)
dy = y(1) - y(end); % if you want start and end point at same Y value (zero or non zero)
yc = linspace(dy,0,numel(y));
ynew2 = y - yc;
plot(t,y,t,ynew1,t,ynew2)
legend('initial data','linear detrend','home made detrend');
  1 commentaire
Abhishek Mishra
Abhishek Mishra le 13 Jan 2023
Thank you! The second solution worked really good.

Connectez-vous pour commenter.

Plus de réponses (0)

Produits


Version

R2021b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by