Matlab R2012 - alpha in one axes causes clipping in another axes on the same figure

조회 수: 1 (최근 30일)
MM GG
MM GG 2016년 4월 13일
댓글: Mike Garrity 2016년 4월 13일
I have a figure with several axes. Using alpha in one axes causes the Renderer to switch to 'OpenGl'. This make the neighbor axes (h_neighbor) go crazy - clipping is turned on, axis disappear, lines looks weird.
I tried several things: (1) Changing order of code, (2) set(h_neighbor,'handlevisibility','off') - didn't work. (3) With the 'painters' Renderer - the alpha doesn't work.
How can I solve this?
Thanks!
  댓글 수: 1
dpb
dpb 2016년 4월 13일
Have to show a sample that creates the problem for anybody to be able to do something...can't diagnose what can't duplicate.

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

답변 (1개)

Mike Garrity
Mike Garrity 2016년 4월 13일
The renderer is shared by all of the axes in a figure. As you've noted, in R2012, you could only use transparency with the OpenGL renderer, and that had a lot of bugs like the ones you're describing. In R2014b, those bugs in the OpenGL renderer were fixed, and the painters renderer started supporting transparency. So that'd be your best bet.
You might be able to work around this in R2012 by using uipanel . Each panel can have its own renderer, so you might be able to get more control by putting each axes in its own panel. I'm not really sure that would work thoug.
  댓글 수: 2
MM GG
MM GG 2016년 4월 13일
Thanks Mike. Can you please demonstrate how to specify a unique renderer for a panel? I don't see this property when I use get(p) (where p is panel identifier).
Mike Garrity
Mike Garrity 2016년 4월 13일
I wasn't sure what release that was added in. If it's not in the output of get, then it probably was added in a later release. Sorry.

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

카테고리

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

Community Treasure Hunt

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

Start Hunting!

Translated by