How to remove empty space after legend?
14 次查看(过去 30 天)
显示 更早的评论
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]);
0 个评论
采纳的回答
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)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Legend 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!