How do i change the linewidth and the fontsize in a legend

114 次查看(过去 30 天)
I use handles to modify my plots. But in the legend, the width of the line before the plot (marker line) is connected to the linewidth of the plot itself. The fontsize alone is a piece of cake. But the changing of the two properties gave me a hard time. I found a solution of the linewidth problem
hp = plot(x_data,plot 1,'color',[0.93,0.69,0.13],'LineWidth',0.25);
hold on
plot(x_data,plot 2,'k','LineWidth',1.5)
hold off
[hleg, hobj, hout, mout] = legend('plot 1','plot 2','Location','Northeast');
set(hobj,'linewidth',1.5);
to change the linewidth inside the legend, but i cannot change (or i dind't found a way) to change the fontsize with this method.

采纳的回答

Nico Spahn
Nico Spahn 2017-3-9
Solved!!!
[~, hobj, ~, ~] = legend({'ONE','TWO'},'Fontsize',12,'Location','Northeast');
hl = findobj(hobj,'type','line');
set(hl,'LineWidth',1.5);
ht = findobj(hobj,'type','text')
set(ht,'FontSize',12);
  2 个评论
Timothy Reilly
Timothy Reilly 2023-5-3
Thanks, this is far superior to other solutions which suggest changing the plot line width.
George S
George S 2023-5-23
编辑:George S 2023-5-23
Hi. I have tried setting the number of columns with this method and it doesn't display them. The line width is thicker, but the number of columns is just one. The NumColumns value shows 4 when using the property inspector, but in the plot there is just one. The example code would be this:
[~, hobj, ~, ~] = legend(finLegend,'NumColumns',3,'Location','best');
Do you know how to fix that?

请先登录,再进行评论。

更多回答(0 个)

类别

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