Plot vectors in cell array over for loop

12 Ansichten (letzte 30 Tage)
skrowten_hermit
skrowten_hermit am 12 Okt. 2020
Kommentiert: skrowten_hermit am 12 Okt. 2020
I have the following data structure (a cell array populated with vectors):
sigvecarray = {};
freqarray = {};
% Reading the audio files, getting the signal vector and the corresponding
for k = 1:numel(inputarray) % indices
curr_input = inputarray{k};
[y, Fs] = audioread(curr_input);
sigvecarray{k} = y;
freqarray{k} = Fs;
end
I'm trying to plot them over a for loop by using the following:
for k = 1:numel(sigvecarray)
plot(sigvecarray{k})
end
But I get only the fist vector plotted as my output. What could I be doing wrong here? Is it because the cell array is a row vector? If yes, how do I convert the cell array to a column vector from a row vector?

Akzeptierte Antwort

KSSV
KSSV am 12 Okt. 2020
figure
hold on
for k = 1:numel(sigvecarray)
plot(sigvecarray{k})
end
  5 Kommentare
skrowten_hermit
skrowten_hermit am 12 Okt. 2020
I had tried out subplots before. They seem to shrink the plots to fit the screen when I do:
for k = 1:numel(sigvecarray)
subplot(length(sigvecarray), 1, k)
plot(sigvecarray{k})
end
Is there a way to decide the size (in pixels for example) of each plot? Say 640x480 or something like that?
KSSV
KSSV am 12 Okt. 2020
Possible you need to set the size of whole figure etc....read the doc.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Ameer Hamza
Ameer Hamza am 12 Okt. 2020
Bearbeitet: Ameer Hamza am 12 Okt. 2020
hold on
will add new lines on the same axes without deleting old lines.
  3 Kommentare
Ameer Hamza
Ameer Hamza am 12 Okt. 2020
You need to use the Position property of the axes object to change their size. An alternative might be to use
nexttile(): https://www.mathworks.com/help/matlab/ref/nexttile.html. Though I am not sure if there is a significant difference.
skrowten_hermit
skrowten_hermit am 12 Okt. 2020
Thanks. Looks promising. I'll definitely try nexttile().

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Graphics Performance finden Sie in Help Center und File Exchange

Produkte


Version

R2017b

Community Treasure Hunt

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

Start Hunting!

Translated by