Как создать массив ячеек строк, содержащих числа

Как Вы эффективно создали бы массив ячеек строк, которые содержат числа (в моем особом случае, массиве ячеек маркировок для легенды).

Например:{'series 1', 'series 2', 'series 3'}

Я попробовал вещи вроде

sprintf('series %i', {1:10})

но по-видимому sprintf и массивы ячеек не играют по правилам вместе.

Что-то вроде этого работает, если я только хочу число, но не работает, если я хочу текст также.

cellstr(int2str([1:10]'))

Очевидно, это может быть сделано в цикле, но должна быть умная острота способ сделать это.

8
задан Kena 4 June 2010 в 18:38
поделиться

2 ответа

Функции INT2STR и STRCAT делают свое дело:

>> cellArray = strcat({'series '},int2str((1:3).')).'

cellArray = 

    'series 1'    'series 2'    'series 3'
6
ответ дан 5 December 2019 в 06:52
поделиться

Немного другой способ:

cellArray = cellstr( num2str((1:3)', 'series %d') )

или альтернативно

cellArray = strcat( num2str((1:3)', 'series %d'), {} )

с результатом:

cellArray = 
    'series 1'
    'series 2'
    'series 3'
3
ответ дан 5 December 2019 в 06:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: