Matlab绘图 图例legend 太长,怎么减小指示线的长度

来源

绘图时,稍微减小文字已经不能正常放下图例,想通过调整图例指示线段长度缩减整个图例长度。

方法一

参考matlab官方论坛

leg = legend('Plot1','Plot2',...);
leg.ItemTokenSize = [x1,x2];
By default x1=30 and x2=18 so put larger or smaller numbers as x1,x2 to increase or decrease the legend line size.

自己的代码

lgd = legend({'Theore. SM--------F', 'Theore. SM--------',...
    'Experi. SM--------', 'Experi. SM--------'});
lgd.ItemTokenSize = [15,18];   % 这一句调整图例示例线段长度
lgd.Position = [0.562 0.735 0.4 0.25];
lgd.FontName = 'Arial';
lgd.FontSize = 7;
set(gca, 'Position', [0.565 0.125 0.435 0.6])

Matlab绘图 图例legend 太长,怎么减小指示线的长度_第1张图片

方法二

单独运行这段代码没问题,但是多个曲线时报错

h1 = plot(1:10);
[hh,icons,plots,txt] = legend({'Line 1'});
p1 = icons(1).Position;
icons(1).Position = [0.3 p1(2) 0];
icons(2).XData = [0.05 0.2];

Matlab绘图 图例legend 太长,怎么减小指示线的长度_第2张图片

你可能感兴趣的:(MATLAB,matlab)