How to have legend in multiple rows and center aligned?

24 次查看(过去 30 天)
I have the following code-
y=repmat([10,20,30,15,25],10,1);
bar(y,'stacked',LineStyle='none');
id=cellstr(num2str([1:size(y,2)].','A%d'));
h=legend(id,'Location','northoutside','Orientation','horizontal',FontSize=13)
This gives the output as-
I want to have the legend in two rows and center aligned at the northoutside.
How do I do that?
Note, I have tried -
h.NumColumns=2;
This gives-
What I want is like this-
A1 A2
A3 A4 A5.
Please note, these must be center aligned.

回答(1 个)

Matt J
Matt J 2024-1-16
The second output of legendflex,
gives handles to the different text and patch objects situated in the legend. You could modify the positions to have the centered appearance that you describe.

类别

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

标签

产品


版本

R2023b

Community Treasure Hunt

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

Start Hunting!

Translated by