2013-07-23 4 views
1

У меня есть текст с тремя строками, которые я хотел бы вставить в качестве легенды в свои сюжеты.Вставить текст в легенду

textLegend: 
'Sentence 1' 
'Sentence 2' 
'Sentence 3' 

Если одно предложение может быть

Sentence1 = 'pressure, Re= 10e5, std Re = 4e3' 

Всякий раз, когда я ставлю легенды (textLegend) я получил

Function 'subsindex' is not defined for values of class 'cell'. 
+0

Можете ли вы предоставить простой пример сюжета и функций, которые вы используете? – Marcin

+0

Я использую функцию простого графика, чтобы увидеть кривые лифта и сопротивления. И легенда похожа на то, что я показал тебе. – JPV

+0

, пожалуйста, разместите точный код, который вы используете для отображения легенды. – mor22

ответ

1

Я думаю, вы хотите использовать:

legend(myCell) 

где вы можете использовать массив ячеек, например:

myCell={'My first sentence','pressure, Re= 10e5, std Re = 4e3'} 

Хорошо, если вы используете его так, оно должно работать, но сообщение об ошибке, которое вы получили, похоже, происходит откуда-то еще. Насколько я вижу, вы используете функцию subsindex, и эта функция получает массив ячеек. Я бы предложил отладить его, остановив в строке, где вызывается функция subsindex. Возможно, вы можете поделиться еще несколькими кодами, если это не поможет ...

0

легенда (textLegend) с массивом ячеек должна быть правильной (предполагается, что вы используете встроенную функцию).

Дважды проверьте, что вы не используете легенду в качестве имени переменной. Я могу реплицировать эту ошибку, указав переменную, называемую легендой (legend = [1 2 3] или аналогичной), а затем подав ей массив ячеек.

Что происходит, что Matlab предполагает, что по легенде (textLegend), вы имеете в виду переменной легенды, а не функцию, пытается вызвать subsindex, и не потому, что вы не может индексировать матрицы с массивом ячеек строк ,

Смежные вопросы