プロットに凡例として挿入したい 3 行のテキストがあります。
textLegend:
'Sentence 1'
'Sentence 2'
'Sentence 3'
1つの文がある場所
Sentence1 = 'pressure, Re= 10e5, std Re = 4e3'
伝説(textLegend)を置くたびに私は得ました
Function 'subsindex' is not defined for values of class 'cell'.
プロットに凡例として挿入したい 3 行のテキストがあります。
textLegend:
'Sentence 1'
'Sentence 2'
'Sentence 3'
1つの文がある場所
Sentence1 = 'pressure, Re= 10e5, std Re = 4e3'
伝説(textLegend)を置くたびに私は得ました
Function 'subsindex' is not defined for values of class 'cell'.
私は、あなたが使いたいと思います:
legend(myCell)
次のようなセル配列を使用できます。
myCell={'My first sentence','pressure, Re= 10e5, std Re = 4e3'}
まあ、このように使えば動くはずですが、出たエラーメッセージは別のところから来ているようです。私が見る限り、関数 subsindex を使用しており、この関数はセル配列を取得します。関数 subsindex が呼び出される行で停止して、デバッグすることをお勧めします。これが役に立たない場合は、おそらくさらにコードを共有できます...
セル配列を含む legend(textLegend) は正しいはずです (組み込み関数を使用していると仮定します)。
凡例を変数名として使用していないことを再確認してください。このエラーを再現するには、legend (legend = [1 2 3] など) という変数を定義し、それに cell 配列を入力します。
何が起こるかというと、Matlab は、legend(textLegend) によって、関数ではなく変数の凡例を意味すると想定し、subsindex を呼び出そうとしましたが、文字列のセル配列で行列にインデックスを付けることができないために失敗しました。