array of strings from an array of integers

60 views (last 30 days)
Hi if I have an array of integers like this:
A=[123 456 789]
How do I get an array of strings, say named B, such that:
BB(1) = 123 (this is string 1) BB(2) = 456 (this is string 2) BB(3) = 789 (this is string 3)
What I am trying to do is use integer values as labels for my xtick labels, and cannot figure out how to do it. Thank you.

Accepted Answer

Matt J
Matt J on 25 Apr 2013
Edited: Matt J on 25 Apr 2013
The output would have to be a cell array
>> BB=arrayfun(@(a)num2str(a),A,'uni',0)
BB =
'123' '456' '789'
>> BB{1}, BB{2}
ans =
123
ans =
456

More Answers (2)

Steven Lord
Steven Lord on 12 Feb 2021
If you're using a release that supports the string array (which did not exist when the original question was asked) use string.
A = randi(999, 1, 5)
A = 1×5
790 270 251 663 335
plot(1:5, 1:5, 'o-')
xticks(1:5)
xticklabels(string(A))
  1 Comment
Walter Roberson
Walter Roberson on 12 Feb 2021
xticklabels() as a function did not exist when the question was originally asked either ;-)

Sign in to comment.


Walter Roberson
Walter Roberson on 12 Feb 2021
A = randi(999, 1, 5)
A = 1×5
440 755 70 554 220
plot(1:5, 1:5, 'o-')
xticks(1:5)
xticklabels(compose('%d',A)) %needs R2016b or later
yticklabels(sprintfc('%d', A)) %undocumented

Categories

Find more on Characters and Strings in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!