how can i make subplots larger without manually stretching them ?

조회 수: 98 (최근 30일)
Hi,
how can I make my plot larger (equally without manually doing that)?
like such plot ?
thanks in advance

채택된 답변

Bjorn Gustavsson
Bjorn Gustavsson 2021년 8월 2일
For figures like this I find it important to remove the xlabel-text except along the bottom row - this saves valuable real-estate that the axes then doesnt have to shrink to accomodate. In order to get this I also find it preferable to have the same x-limits on every subplot column - then it also becomes useful to remove the xticklabels on every axes except the bottom one. The plotting is typically done with the decorations like this:
for i1 = 1:28
sph(i1) = subplot(7,4,i1)
plot(x{i1},y{i1},'r.-');
axis([something suitable])
% maybe: set(gca,'xtick',[5:8]) % this should be adjusted according too
% need
if i1 <= 24
set(gca,'xticklabel','','tickdir','out') % sometimes worthwhile to increase ticklength too
else
set(gca,'tickdir','out')
xlabel('Distance [cm]') % adjust to needs
end
end
Then you can further programmatically increase the size of each subplot to squeeze out more space (I often find this too fiddly):
set(sph(1),'position',get(sph(1),'position')+[-0.05 -0.05 0.1 0.1]) % this should be twiddled
HTH

추가 답변 (1개)

Image Analyst
Image Analyst 2021년 8월 2일
Use the tiledlayout and nexttile functions to create a configurable tiling of plots. The configuration options include:
  • Control over the spacing between the plots and around the edges of the layout
  • An option for a shared title at the top of the layout
  • Options for shared x- and y-axis labels
  • An option to control whether the tiling has a fixed size or variable size that can reflow
For more information, see Combine Multiple Plots.

카테고리

Help CenterFile Exchange에서 2-D and 3-D Plots에 대해 자세히 알아보기

제품


릴리스

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by