array of strings from an array of integers

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.

 Réponse acceptée

Matt J
Matt J le 25 Avr 2013
Modifié(e) : Matt J le 25 Avr 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

Plus de réponses (2)

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 commentaire

Walter Roberson
Walter Roberson le 12 Fév 2021
xticklabels() as a function did not exist when the question was originally asked either ;-)

Connectez-vous pour commenter.

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

Catégories

En savoir plus sur Characters and Strings dans Centre d'aide et File Exchange

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by