凡例の複数行化エラー:cell 型の値をインデックスとして使用できません。
11 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
scatter関数を使いfigureを作成したところ,凡例が多かったので複数列化を試みました.
legend({'Cutting Depth = 5 [mm]','...','Cutting Depth = 50 [mm]'},'FontSize',10,'Interpreter','latex','Location','northeast','NumColumns',2)
すると,「cell型の値をインデックスとして使用できません」というエラーが出てきてしまい,figureには凡例が表示されず困っています.
ここのとおりに書いたつもりなのですが,上手くいかない原因が分かれば教えて下さい.
0 commentaires
Réponses (1)
Kojiro Saito
le 20 Déc 2021
コードのどこかにlegendという変数を定義していたり、legend.mというカスタムの関数を書いたりしていませんでしょうか?
which legend -all
を実行してみて、<MATLABインストールフォルダ>\toolbox\matlab\scribe\legend.m だけがリターンされれば問題ないのですが、「legend is a variable.」と表示されたり、別のフォルダにあるlegend.mが表示されたりすると、凡例を付ける関数legendが正しく認識されません。
もしlegendという変数を定義していたら
clear legend
で変数legendをクリアして、違う変数名で定義したり、
カスタムのlegend.mがある場合は別名(例:mylegend.m)のファイル名にしたりすることで解決できると思います。
2 commentaires
Kojiro Saito
le 21 Déc 2021
legendは問題なさそうですね。私の環境では再現できないので、どのようなfigureをプロットしてこの現象が起きているのか、サンプルコードを提供いただけますか?
Voir également
Catégories
En savoir plus sur Legend dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!