make spaces in subplot
3 次查看(过去 30 天)
显示 更早的评论
Hi,
I am using subplot to plot a number of graphs (see program below). The graphs in the subplot are too close to each other and the title of the graph (on top of each graph) is overlapped with the x axis of the above graph. Is there a way to increase the row space between the graphs? Many thanks in advance.
for i = 1:nvar
subplot(8,5,i);
plot(cell2mat(nonstnlist(2:end,i)));
set(gca,'XLim',[1,obs]);
title(nonstnlist(1,i),'interpreter','non');
saveas(gca,'nonstnlist.fig');
end
0 个评论
回答(1 个)
Walter Roberson
2014-4-25
You could try something like this,
magfactor = 4; %play with this.
sprows = 8 * magfactor - 1;
spcols = 5;
for i = 1 : nvar
sp_logical_row = 1 + floor((i - 1) ./ spcols);
sp_logical_col = i + mod(i - 1, spcols)
sp_group = (sp_logical_row - 1:sp_logical_row + magfactor - 1 - 1) * magfactor + sp_logical_col;
subplot(sprows, spcols, sp_group);
.... drawing commands here
end
If I have worked everything out correctly, then what this does is divides each row up into "magfactor" parts, and draws in the top (magfactor - 1) of them, leaving the bottom one empty to provide a buffer between rows.
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!