How to remove empty space after legend?

13 visualizzazioni (ultimi 30 giorni)
haohaoxuexi1
haohaoxuexi1 il 8 Dic 2022
Commentato: Voss il 9 Dic 2022
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]);

Risposta accettata

Voss
Voss il 9 Dic 2022
Modificato: Voss il 9 Dic 2022
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 Commenti
haohaoxuexi1
haohaoxuexi1 il 9 Dic 2022
Modificato: haohaoxuexi1 il 9 Dic 2022
Thanks,
I will try this method.
Voss
Voss il 9 Dic 2022
You're welcome!

Accedi per commentare.

Più risposte (1)

Arif Hoq
Arif Hoq il 9 Dic 2022
Modificato: Arif Hoq il 9 Dic 2022
you can change your lengend location to "northwest" or "Southeast"
legend(LegendInfo, 'Location', 'northwest', 'fontname', 'Times New Roman', 'fontsize', 12, 'NumColumns', 3);
"
  1 Commento
haohaoxuexi1
haohaoxuexi1 il 9 Dic 2022
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.

Accedi per commentare.

Prodotti


Release

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by