How to find the difference between two graphs?

I have a graph shown in the figure below and now i have to find difference between two graphs, red line is drawn from some A= 59x2 matrix(taken from matlab Simulink) and blue line drawn from B= 149x2 matrix both drawn for same parameters and i don't have any idea how to find the difference between both the lines. So if anyone has any idea please help me with that.
code used is
figure();plot(simout.A.Time,simout.A.Data);
hold on;
plot(B(:,1),B(:,2));
Thanks in advance Agastya

 Réponse acceptée

the cyclist
the cyclist le 24 Nov 2014

3 votes

The curves are pretty smooth, so you could use the interp1 command to create y values at common x points for the two curves, and then take the differences of those y values.

4 commentaires

Agastya
Agastya le 24 Nov 2014
Hi, Can you just tell me the code with interp1 for my case?
This should give the y values for your two series, at x values of 0, 0.01, 0.02, ... 1.00
xq = 0 : 0.01 : 1;
yqA = interp1(simout.A.Time,simout.A.Data,xq);
yqB = interp1(B(:,1),B(:,2),xq);
Agastya
Agastya le 24 Nov 2014
Hi, Thank you very much
Hello the cyclist, what if the x values aren't common?Then how to find the difference?

Connectez-vous pour commenter.

Plus de réponses (1)

Ahmet Cecen
Ahmet Cecen le 24 Nov 2014

0 votes

One way is to interpolate the 59x2 matrix to be 149x2. Check spectral interpolation using Fourier transforms. You might even be able to get away with imresize in your case.

1 commentaire

Agastya
Agastya le 24 Nov 2014
Hi, Can you just tell me the code with interp1 for my case?

Connectez-vous pour commenter.

Catégories

Community Treasure Hunt

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

Start Hunting!

Translated by