how to make all vectors to equal size for a cell array.
4 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Sandhu
am 10 Okt. 2011
Bearbeitet: per isakson
am 1 Dez. 2017
hi, i have a cell array of z{k}, it has totally 60 cells. which are diffident size in columns. so while i am trying to plot all arrays data in a single plot,[plot(z{1}) it works for one cell.] it says all vectors must have same size.
plot(z{:})
??? Error using ==> plot
Vectors must be the same lengths.
so, i want to make equal size of vectors by placing zeros. so any one can please help me.
0 Kommentare
Akzeptierte Antwort
Fangjun Jiang
am 10 Okt. 2011
It might be easier using a for-loop, with hold on;
figure;hold on;
for k=1:length(z)
plot(z{k});
end
Weitere Antworten (1)
Laura Proctor
am 10 Okt. 2011
lv = max(cellfun(@length,z));
za = zeros(1,lv);
for idx = 1:length(z)
cellVal = z{idx};
if length(cellVal) < lv
z{idx} = za;
z{idx}(1:length(cellVal)) = cellVal;
end
end
2 Kommentare
Siehe auch
Kategorien
Mehr zu Elementary Math finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!