How can I resize the horizontal lineLength in Legend?

1 次查看(过去 30 天)
For ex.:
plot(x,sin(x));
[r, hobj1]=legend('sin(x)');
textobj = findobj(hobj1, 'type', 'line');
set(textobj,'???????????', 8); %Is there any lineProperty like 'lineLength'?
Thanks in advance!

回答(1 个)

Chris Turnes
Chris Turnes 2014-10-18
When I try this in R2014a, two objects are returned into textobj, and the first seems to correspond to the line that is drawn in the legend. I can then access and change the length of the line with the following commands:
>> lineXData = get(textobj(1), 'XData');
>> lineXData(2) = 0.6; % Change this line to give you the x coordinates you want
>> set(textobj(1), 'XData', lineXData);
The units for the legend are normalized, so you may have to figure out the unit conversion, but this should do the trick.

类别

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

Community Treasure Hunt

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

Start Hunting!

Translated by