Question: subplot axes label cut off (activepositionproperty problem?)
40 ビュー (過去 30 日間)
古いコメントを表示
Hi! I want to make a subplot such that two plots are side by side. The resulting figure needs to be small enough to fit in my document, and in the eps format. However, when I try to resize the figure past a certain size, the axes x labels are cut off like so :
this only happens when you resize it small enough. Also, it doesn't happen with the 'plot' command, I can resize as much as i like and the axes labels are maintained in the figure. My understanding is that activepositionproperty governs this sort of thing, and that it should be set to 'outerposition', but I've tried forcing that and it doesn't have any effect. Also, it doesn't seem to matter if you manually set the papersize and paperposition and then export, or whether you change the figure size using WYSIWYG on screen and then exporting. Would be grateful for any ideas to work around or fix this problem! I'm sure it didn't used to happen on earlier versions of matlab
採用された回答
Jason P
2012 年 2 月 28 日
I have been having the same problem but just got around it by "hacking" the axis position for each of the subplots:
v = get(gca,'Position');
set(gca,'Position',[v(1) v(2)*1.5 v(3:4)])
and you can adjust the values v(2) and v(4) to be whatever looks best for you.
その他の回答 (4 件)
William Thielicke
2020 年 11 月 24 日
So this bug still hasn't been fixed...? After 8.5 years...?
0 件のコメント
Shep Bryan
2021 年 1 月 29 日
I have found a pretty decent work around. When you make your xlabel, add an extra blank line like this:
xlabel({'my label', ''})
That way the extra line gets cut off, but the real label is preserved.
0 件のコメント
Yavor Dobrev
2021 年 8 月 3 日
Since R2020a there is a property, which solves this problem. Setting PositionConstraint to outerposition solved it for me. See https://de.mathworks.com/help/matlab/creating_plots/automatic-axes-resize.html
参考
カテゴリ
Help Center および File Exchange で Subplots についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!