如果我理解正确的话,你想访问icons
调用的输出legend
并修改MarkerSize
作为这些图标子级的补丁对象的属性。
Call to legend
:
[h,icons,plots,legend_text] = legend('Circle', 'Plus', 'X', 'Location', 'NorthEast');
icons
是一个 6x1 图形数组,如下所示:
icons =
6x1 graphics array:
Text (Circle)
Text (Plus)
Text (X)
Group (Circle)
Group (Plus)
Group (X)
您需要的是与 a 相关的元素Group
.
如果你看看他们的属性(这里icons(4)
), 你得到:
icons(4)
Group (Circle) with properties:
Children: [1x1 Patch]
Visible: 'on'
HitTest: 'off'
Show all properties
因此有一个补丁对象与其子对象关联。您想使用例如修改它
icons(Some index).Children.MarkerSize
对于您的情况,您需要修改对象 4 到 6:
for k = 4:6
icons(k).Children.MarkerSize = 20;
end
其输出:
当然,您可以将其自动化。我使用了 R2015a,因此我希望 R2014b 的行为相同。
希望这就是您的意思!