Aligning subplots (colorbar and axis equal issue)
23 ビュー (過去 30 日間)
古いコメントを表示
What would be the simplest way to align the x-axes of the two subplots while keeping the "axis equal" and "axis tight" properties on the bottom subplot? Thank you.
figure('position',[680 183 560 795]) subplot(2,1,1) imagesc(rand(1,3)) colorbar
subplot(2,1,2) imagesc(rand(3,3)) axis equal axis tight
0 件のコメント
回答 (1 件)
jonas
2018 年 8 月 17 日
編集済み: jonas
2018 年 8 月 17 日
This was more difficult than I'd imagined, as axis equal changes the 'tightinset' and 'aspectratio' of the plot. This fileexchange function ( link ) proved very helpful. Using this function, you can try this code:
%%Original code
figure('position',[680 183 560 795])
h(1)=subplot(2,1,1)
imagesc(rand(1,3))
colorbar
h(2)=subplot(2,1,2)
imagesc(rand(3,3))
axis equal
axis tight
%%Add this section
pos{1} = plotboxpos(h(1))
pos{2} = plotboxpos(h(2))
NewPos=[pos{2}(1) pos{1}(2) pos{2}(3) pos{1}(4)]
set(h(1),'position',NewPos);
See attachment for results. The x-axes are aligned while the original height is maintained.
0 件のコメント
参考
カテゴリ
Help Center および File Exchange で Subplots についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!