更改图例线条样式

Change legend line style

我在玩剧情的视觉效果,在改变一个legend的样式时出现了一个问题。

为了能够保存带有足够大图例的图形,通常需要将 FontSize 属性 更改为例如24. 当你这样做时,字体的大小改变了,但是,它旁边的小线与它小时的大小相同。 line/text 之间的比例对我来说似乎很合适,FontSize 大约为 10,而我认为大字体更大 "eat" 视觉上的线条,这是重要的部分。

字体大小为 30 和 10 的示例(请忽略我吸收了多少 mspaint 和缩放图例的低分辨率)。 line/text的比例小的比较好看。

我想知道是否有办法修改该行。我一直在检查属性,但没有找到任何相关的属性。

注意: LineWidth 属性 不会改变颜色线的宽度,但会改变边界框的宽度。

您可以使用 legend 的输出参数,尤其是 icons 变量(检查 here)。

根据文档,它们对应于

Objects used to create the legend icons and descriptions, returned as text, patch, and line object.

因此,您可能会使用类似这样的东西来修改任何情节的 LineWidth 属性,当然也可以同时修改两者:

clear
clc
close all
x = 1:10;

plot(x,rand(1,10));
hold on;

plot(x,x,'k');

[h,icons,plots,str] = legend('First plot','Second plot','Location','NorthWest');

set(h,'FontSize',30);

set(icons(:),'LineWidth',2); %// Or whatever

输出:

请注意,我使用的是 R2014a,因此 R2014b 可能略有不同。