Using repmat command to create cell array
1 次查看(过去 30 天)
显示 更早的评论
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.
0 个评论
回答(1 个)
Walter Roberson
2012-7-7
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.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Model Architecture and Design 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!