How do I repeat a column vector with a for loop?
1 visualizzazione (ultimi 30 giorni)
Mostra commenti meno recenti
Janell Lopez
il 20 Feb 2016
Commentato: Star Strider
il 20 Feb 2016
Hi, I'm making a synthetic image for my class, and we have to use a for loop to do so. I have a column vector with the color values in it for one layer, but I need to make it into an mxn matrix so that I can stack them all together at the end for my image. How do I repeat this column vector left to right to make the matrix? I tried something like this:
bottomlayer=linspace(0,1,255);
greenlayer=bottomlayer;
bluelayer=fliplr(greenlayer);
redlayer=flipud(reshape(bottomlayer, [255,1]));
redfinal=zeros(256,256);
for i=1:256
redfinal(:,i)=redlayer;
end
but that gives me an error: "Assignment has more non-singleton rhs dimensions than non-singleton subscripts".
What am I doing wrong? Thanks.
0 Commenti
Risposta accettata
Star Strider
il 20 Feb 2016
Your ‘redlayer’ vector is (255x1) and your ‘redfinal’ matrix is (256x256). That causes a dimension mismatch. One of them has to change dimension by 1, and you should be good to go.
2 Commenti
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Creating and Concatenating Matrices in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!