How to remove empty space after legend?

조회 수: 15 (최근 30일)
haohaoxuexi1
haohaoxuexi1 2022년 12월 8일
댓글: Voss 2022년 12월 9일
Can anyone please give me some advice on how to remove the area below the legend.
The code is below, thanks.
C_Span = [4 8 12];
Length_C_Span = length(C_Span);
% standard plot size
x0_d=10; y0_d=10; width_d=675; height_d=width_d/(5/3); % figure default size
%height_d=675;
figure(1);
plot([1 2 3], [1 5 7]);
hold on;
plot([1 2 3], [4 5 8]);
hold on;
plot([1 2 3], [1 5 9]);
hold off;
%grid on;
box on;
for i = 1:Length_C_Span
LegendInfo{i} = ['{\it {\beta}} = ', num2str(C_Span(i))];
end
legend(LegendInfo, 'Location', 'SouthOutside', 'fontname', 'Times New Roman', 'fontsize', 12, 'NumColumns', 3);
set(gcf, 'position', [x0_d,y0_d,width_d,height_d]);

채택된 답변

Voss
Voss 2022년 12월 9일
편집: Voss 2022년 12월 9일
You can adjust the axes height as below (I'm using a red figure so you can see the space beneath the axes here in the online environment):
C_Span = [4 8 12];
Length_C_Span = length(C_Span);
% standard plot size
x0_d=10; y0_d=10; width_d=675; height_d=width_d/(5/3); % figure default size
%height_d=675;
% figure(1)
figure('Color','r');
plot([1 2 3], [1 5 7]);
hold on;
plot([1 2 3], [4 5 8]);
hold on;
plot([1 2 3], [1 5 9]);
hold off;
%grid on;
box on;
for i = 1:Length_C_Span
LegendInfo{i} = ['{\it {\beta}} = ', num2str(C_Span(i))];
end
legend(LegendInfo, 'Location', 'SouthOutside', 'fontname', 'Times New Roman', 'fontsize', 12, 'NumColumns', 3);
set(gcf, 'position', [x0_d,y0_d,width_d,height_d]);
% increase axes height by 0.07 (and decrease the bottom location by same
% amount):
adjustment = 0.07; % change this to what you think looks good
ax_pos = get(gca(),'Position');
ax_pos([2 4]) = ax_pos([2 4])+[-1 1]*adjustment;
set(gca(),'Position',ax_pos)
  댓글 수: 2
haohaoxuexi1
haohaoxuexi1 2022년 12월 9일
편집: haohaoxuexi1 2022년 12월 9일
Thanks,
I will try this method.
Voss
Voss 2022년 12월 9일
You're welcome!

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

Arif Hoq
Arif Hoq 2022년 12월 9일
편집: Arif Hoq 2022년 12월 9일
you can change your lengend location to "northwest" or "Southeast"
legend(LegendInfo, 'Location', 'northwest', 'fontname', 'Times New Roman', 'fontsize', 12, 'NumColumns', 3);
"
  댓글 수: 1
haohaoxuexi1
haohaoxuexi1 2022년 12월 9일
I want it keep outside the plot. I know I can put it inside, there is even an option called "best" which will put it in a proper position inside the plot.

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Legend에 대해 자세히 알아보기

제품


릴리스

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by