How to create an array with the same letter but different number

1 view (last 30 days)
Hi,
How can I create an array or cell, something like Variable = {'X1','X2','X3',...,'X43'}? when i give for example the length = 43.
So when I do my plots, i call put the title as title (variable(i))
Thanks!
  1 Comment
Adam
Adam on 17 Oct 2018
Variable = arrayfun( @(x) ['X', num2str( x )], 1:43, 'UniformOutput', false )
would create them all upfront.

Sign in to comment.

Accepted Answer

Jan
Jan on 17 Oct 2018
Len = 43;
V = sprintfc('X%d', 1:Len);
Or with modern Matlab versions:
V = compose('X%d', 1:Len);
Then:
title(V{i})

More Answers (1)

KSSV
KSSV on 17 Oct 2018
for i = 1:10
plot(rand(1,10))
title(sprintf('X%d',i))
drawnow
pause(0.5)
end
  1 Comment
Jan
Jan on 17 Oct 2018
+1: There is no need to store the names in an array, if you can create them dynamically.

Sign in to comment.

Tags

Community Treasure Hunt

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

Start Hunting!