How do I plot a 144000 sample sound file with 400 samples in different windows with for loop?

1 view (last 30 days)
I have a plot of an audio file with 144000 samples. I want to draw these 144000 sample sound files in 400 separate windows each. Each window will contain 400 instances of it, and I want to interpret it in every 400 windows. Can you help me?
  2 Comments
furkan akhan
furkan akhan on 11 Apr 2021
I mean the plot in the screenshot I took is 144000 samples. I want to plot this as 400 samples in separate windows.
sound=structWheeze(2,1).SoundData;
for i=1:200:144000
first=sound(i:i+399);
end
plot(first)
I tried this code but it didn't work

Sign in to comment.

Answers (1)

Star Strider
Star Strider on 11 Apr 2021
Edited: Star Strider on 11 Apr 2021
If ‘y’ is the signal, and you have the Signal Processing Toolbox, use the buffer function:
framelen = 400;
frames = buffer(y, framelen);
The ‘frames’ variable is a (400x360) matrix, and each column is a non-overlapping segment of ‘y’ that is 400 samples in length. It would also be possible to use the reshape function, however buffer is the easier option.
To plot them, simply plot each column.
EDIT —
The loop posted in the Comment would indicate that the plots would have 50% overlap, since the segment indices would be:
1 400
201 600
401 800
601 1000
801 1200
and so to the end of the file. The buffer function can also do that.
  4 Comments
furkan akhan
furkan akhan on 11 Apr 2021
Thanks a lot but i wanna ask you a question again. How can I plot these 400x360 data in separate windows? To examine each sample of 400.
Star Strider
Star Strider on 11 Apr 2021
There are at least two options:
for k = 1:size(frames,2)
figure
plot(frames(:,k)) % Plot Each In Separate Figure
end
or:
for k1 = 1:fix(size(frames,2)/10)
figure
for k2 = 1:10 % 36 Figures With 10 subplot Axes Each
subplot(5,2,k2)
plot(frames(:,k2+10*(k1-1)))
title(sprintf('Column %3d', k2+10*(k1-1)))
end
end
and any number of variations on the subplot version. Experiment to get the result you want.

Sign in to comment.

Categories

Find more on 2-D and 3-D Plots in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!