Remove an item in legend

15 ビュー (過去 30 日間)
Lizan
Lizan 2013 年 5 月 7 日
回答済み: Laura F 2022 年 5 月 6 日
Hi,
I have a legend like
x, y, spline
I would like the legend to only show x, y and not show spline as a dataset. How can I do this? I would preferably not have to redo the whole image.

回答 (2 件)

Sean de Wolski
Sean de Wolski 2013 年 5 月 7 日
How abotu just calling legend again without the input for the line you don't want:
hLine = plot(1:10,1:10,'r-',1:10,10:-1:1,'b-');
hLegend = legend(hLine,'up','down');
Now to remove it:
%Add another legend:
legend(hLine(1),'up')
  2 件のコメント
Lizan
Lizan 2013 年 5 月 7 日
My problem is that this new entry is not one I plot. It comes from the fitting tool that I added directly in the figure. But I don't want it to show as a separate label.
There is no way to manually fetch the name of the handle and then turn it off or remove it manually?
Sean de Wolski
Sean de Wolski 2013 年 5 月 7 日
There might be a way to do this by removing children from the Legend and from shortening the string property:
get(hLegend)
Then use set() to change the ones you need.

サインインしてコメントする。


Laura F
Laura F 2022 年 5 月 6 日
I hope, that I understand the question right. I had the same problem and solved it like this:
Lgnd = legend('show','Orientation','horizontal');
Lgndstr = Lgnd.String(1:2);
Lgnd.String = Lgndstr;

カテゴリ

Help Center および File ExchangeLegend についてさらに検索

タグ

製品

Community Treasure Hunt

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

Start Hunting!

Translated by