Unable to add title to legend

5 次查看(过去 30 天)
I tried to give a title to the legend on my plot but the error of Error using title (line 27) Incorrect number of input arguments
So I tried using the example given on the Matlab website:
x = -pi:pi/20:pi;
y1 = sin(x);
plot(x,y1)
hold on
y2 = cos(x);
plot(x,y2)
hold off
lgd = legend('sin(x)','cos(x)');
title(lgd,'My Legend Title')
And I got the same error. I would like some help with this.
  2 个评论
KSSV
KSSV 2016-9-22
I think the title to legend is supported in MATLAB verison 2016. If you are specific about adding title, you can try keeping string at specified position.
pos = get(lgd,'position') ;
text(pos(1)+1.4,pos(2)+0.16,'My Legend Title') ;
there might be other ways.
Walter Roberson
Walter Roberson 2016-9-22
legend() does not support title in R2016a or R2016b.

请先登录,再进行评论。

采纳的回答

Walter Roberson
Walter Roberson 2016-9-22
legends do not have titles. Axes have titles.
  3 个评论
Ayush Mishra
Ayush Mishra 2016-9-23
Yes I agree. I wonder why they have not mentioned that on the MATLAB Page.
Walter Roberson
Walter Roberson 2016-9-23
编辑:Walter Roberson 2016-9-23
title has never been a supported attribute for legends. Mathworks does not often document changes affecting only what an object could be "hacked" to do -- using undocumented internal implementations has always been "at your own risk".
Checking further, I find that for legends, you can now use
lgd.Title.String = 'My Legend Title';
so I was wrong about legends not having titles; the official documentation is http://www.mathworks.com/help/matlab/ref/legend-properties.html#property_Title

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Title 的更多信息

标签

尚未输入任何标签。

Community Treasure Hunt

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

Start Hunting!

Translated by