Plotting the same signal with a different scanning

1 visualización (últimos 30 días)
Philipp Mueller
Philipp Mueller el 27 de Mayo de 2021
Editada: EmirBeg el 27 de Mayo de 2021
Hello,
One time i measure a signal for 30 seconds with 50 Hertz and the second time i measure the same signal 30 seconds now with 600 Hertz. So i get 2 arrays (x*2 double) with a different size. Now i want to plot this 2 signals in one diagram. Is this possible?

Respuesta aceptada

EmirBeg
EmirBeg el 27 de Mayo de 2021
Editada: EmirBeg el 27 de Mayo de 2021
You can interpolate one of the signals to make them the same size. Something like this:
Signal1 = (linspace(1,30,30))';
Signal2 = (linspace(1,30,180))'; %don't mind this, just creating your signals with different frequencys
Signal1_int = interp1(1:size(Signal1,1),Signal1.',linspace(1,size(Signal1,1),size(Signal2,1)))';
%interpolating the first signal so it's the same size as the second
Now you can plot both signals in one plot.
plot(t,Signal1_int,t,Signal2);
Or just use hold on and hold off.

Más respuestas (1)

Asmit Singh
Asmit Singh el 27 de Mayo de 2021
If I understood correctly, you are trying to plot 2 signals in a single graph. This documentation should be helpful. You can plot 2 signals in a single graphs using 'hold on'.
x = linspace(-pi,pi);
y1 = sin(x);
plot(x,y1)
hold on
y2 = cos(x);
plot(x,y2)
hold off

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by