凡例に追加せずに、グラフ内に線を引く

94 ビュー (過去 30 日間)
Mamoru Mabuchi
Mamoru Mabuchi 2020 年 6 月 17 日
回答済み: Mamoru Mabuchi 2020 年 6 月 21 日
グラフ内に線を引きたいのですが、勝手に凡例に追加されてしまいます。
凡例に追加せずに、線だけをプロットする方法を教えてください。
x=1:10;
y=sin(x);
plot(x,y)
legend('sin')
xline(4) % 線だけひきたい

回答 (3 件)

michio
michio 2020 年 6 月 18 日
x=1:10;
y=sin(x);
plot(x,y)
legend('sin')
xline(4) % 線だけひきたい
と実行したときに凡例として 'sin' に加えて 'data1' が出てきてしまうのが問題ということですね。
例えば特定の線にだけ凡例を付ける場合は、その線のオブジェクト(下記 h1 と h2)にだけ凡例を付ける・・という呼び出し方があります。
x=1:10;
y=sin(x);
h1 = plot(x,y);
h2 = xline(4);
legend(h1, 'sin')
ただ、この後にさらに xline(5) と実行するとまた新たに判例が追加されてしまいます・・。ですので、プロットするものが最後まで終わった時に legend を実行しなければいけないという点は、多少不便ですね。
次は、描いた線のプロパティを変更する方法です。以下でも紹介されています。
具体的には、
x=1:10;
y=sin(x);
plot(x,y)
legend('sin')
h2 = xline(4)
h2.HandleVisibility = 'off';
という形で xline で描いた線のオブジェクトの持つ、'HandleVisiblity''off' にすることで凡例には反映されなくなります。
他にもよいやり方があればコメントください。参考になりましたら。

Kenta
Kenta 2020 年 6 月 18 日
legend('sin')
を消去したらいかがでしょうか?

Mamoru Mabuchi
Mamoru Mabuchi 2020 年 6 月 21 日
解決しました。ご回答ありがとうございました。

タグ

製品

Community Treasure Hunt

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

Start Hunting!