Effacer les filtres
Effacer les filtres

Using repmat command to create cell array

1 vue (au cours des 30 derniers jours)
Luffy
Luffy le 7 Juil 2012
I want to create a cell array with a repeating pattern of rgb colors of size n where n is a variable that is determined on the run,
So,I've tried this,
repmat({'red','blue','green','black','cyan','magenta','yellow'}, 1, n);
But this generates array of size 7*n, is there a way to delete those extra values/any other function that does this.

Réponses (1)

Walter Roberson
Walter Roberson le 7 Juil 2012
T = {'red','blue','green','black','cyan','magenta','yellow'};
T(1 + mod( (1:n)-1, length(T) ) )
You could repmat n/7 times but you would have to take precautions in case n was not exactly divisible by 7, and you would have to add on the fractional copy to fill out from the full cycle to n.

Catégories

En savoir plus sur Model Architecture and Design dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by