필터 지우기
필터 지우기

Axes OuterPosition going nuts

조회 수: 6 (최근 30일)
Sjouke Rinsma
Sjouke Rinsma 2021년 1월 22일
댓글: Jan 2021년 1월 23일
Okay, so I have an old GUIDE-created figure (with custom toolbar, which is the reason I still use it) containing 4 axes which I have sorted two-by-two. I have set the Figure and all Axes' units to normalized. The axes are displayed in the figure as shown below. When I request the Position or TightInset values I get the correct normalized values. However, when I request the OuterPosition for these axes I get some ridiculous values, see code below. When everything is set to normalized, why oh why am I getting these results. In fact; how should it even be possible that I get values outside the 0-1 range when all is set to normalized? Any ideas?
A(1:4).OuterPosition
ans =
-110.8247 -54.7364 193.1601 92.5802
ans =
-110.8247 -54.2364 193.1601 92.5802
ans =
-111.3247 -54.7364 193.1601 92.5802
ans =
-111.3247 -54.2364 193.1601 92.5802

답변 (1개)

Jan
Jan 2021년 1월 22일
편집: Jan 2021년 1월 22일
When do you get these output position values? Before a drawnow or afterwards?
Please check again, if you are really checking the objects you thinks you are checking:
A(1).Color = [1,0,0]
drawnow
A(1).OuterPosition
A(1).Position
A(1).Units
  댓글 수: 3
Sjouke Rinsma
Sjouke Rinsma 2021년 1월 22일
Okay, so I am to exuse myself... I made a boo boo.
It apparently did not come to mind I was mistaken in expecting all normalized positional values to be between 0 and 1... scaling doet not imply limiting when considering variables that depend on each other.
I'm working in a several thousand lines of code in which the setting of the axes to 'normalized' was accidentally preceded by a setting of the axes position to a normalized value (e.g. [0 0.5 0.5 0.5]). Because I additionally use a function that automatically sorts the axes layout for a given figure, the position value was again set to the normalized value ([0 0.5 0.5 0.5]) resulting in the OuterPosition becoming as indicated before.
Jan
Jan 2021년 1월 23일
I'm glad if your problem is solved. Debugging is a hard job, which can be solved with co-workers much easier.

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Annotations에 대해 자세히 알아보기

태그

제품


릴리스

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by