Axis position is shifted when YtickLabel gets different number of digits in App designer.

1 回表示 (過去 30 日間)
I made an axis to plot a spectrum on App designer. When data of spectrum was changed and the YtickLabel gets different number of digits, the position of the Y axis was shifted as shown in the attached figure. Is there any way to prevent the shift without turning off auto y axis range, and without normalization of the spectrum data?

採用された回答

亮介 桶谷
亮介 桶谷 2021 年 6 月 29 日
After reading Bjorn Gustavsson's comment, I got a hint from his comment and found a good way to solve the problem.
I just put
app.axis.InnerPosition = [46.4000 53.4000 436.1000 156.6000];
after I did "plot".
Thank you for the advice from Bjorn Gustavsson!!

その他の回答 (1 件)

Bjorn Gustavsson
Bjorn Gustavsson 2021 年 6 月 29 日
The cumbersome way of explicitly aligning the the position of the axes after each plotting might work? Something like this perhaps:
indefinite = 123; % just for illustratino
for i1 = 1:indefinite
x = randn(321,1);
y = rand(321,1);
t = 0:321;
sph1 = subplot(2,1,1); % more modern means exist
plot(t,y)
sph2 = subplot(2,1,2);
plot(t,x)
pos1 = get(sph1,'position');
pos2 = get(sph2,'position');
set(pos2,'position',[pos1(1),pos2(2),pos1(3),pos2(4)])
drawnow
end
That should force the axeses to line up in the vertical direction.
HTH
  2 件のコメント
亮介 桶谷
亮介 桶谷 2021 年 6 月 29 日
Thank you for your comment!
Actually, your answer didnot work on app designer.
But I got a hint from your comment and found a good way to solve the problem!!!
I just put
app.axis.InnerPosition = [46.4000 53.4000 436.1000 156.6000];
after I did "plot".
Thank you for your advice!!
Bjorn Gustavsson
Bjorn Gustavsson 2021 年 6 月 29 日
Good. I haven't worked with app designer - but there ought to be a similar handle-graphics interface to the plottings, so now you now roughly what to look for and where...

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeGraphics Performance についてさらに検索

製品


リリース

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by