A problem with multiple columns in legend
조회 수: 20 (최근 30일)
이전 댓글 표시
Hi all,
I just made the following lines, simply I cannot make a multiple column legend.
If anyone knows how to deal with this, i would be very thankful!
Thanks in advance.
figure
bar(randn(4))
[xx,yy] = legend({'a','b','c','d'}, 'box','off','NumColumns', 4)
댓글 수: 0
채택된 답변
Walter Roberson
2019년 8월 26일
You cannot get multiple legend columns when you request the output of the legend icons.
[xx] = legend({'a','b','c','d'}, 'box','off','NumColumns', 4)
댓글 수: 2
Walter Roberson
2019년 8월 26일
The code actively chooses backwards compatibility if there is more than one output argument. That causes the legend to be built diffrently.
추가 답변 (1개)
Fred
2019년 11월 11일
But I need to increase the size of my MarkerSizes in my legend AND use two columns. Is there any way to do this?
%MWE of legend column and icon modification problem
close all, clearvars
x = 1:5; y = x.^2; %some data
figure
hold on
h = [scatter(x,5*x,200,'blue','filled','s'); ...
scatter(x,y,200,'red','filled','d')];
lgd = legend(h,{'Line','Quadratic'},'Location','Northwest');
lgd.NumColumns = 2; %want 2 columns for legend
figure
hold on
h = [scatter(x,5*x,200,'blue','filled','s'); ...
scatter(x,y,200,'red','filled','d')];
[lgd,icons] = legend(h,{'Line','Quadratic'},'Location','Northwest');
icons(3).Children.MarkerSize = 20; %want bigger MarkerSize for legend
icons(4).Children.MarkerSize = 20;
figure
hold on
h = [scatter(x,5*x,200,'blue','filled','s'); ...
scatter(x,y,200,'red','filled','d')];
[lgd,icons] = legend(h,{'Line','Quadratic'},'Location','Northwest');
icons(3).Children.MarkerSize = 20; %want bigger MarkerSize for legend
icons(4).Children.MarkerSize = 20;
lgd.NumColumns = 2; %want 2 columns for legend
% But I cannot have both. In fact, using [lgd,icons] makes 2 columns
% impossible
댓글 수: 0
참고 항목
카테고리
Help Center 및 File Exchange에서 Legend에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!