How can I change imshow position to another monitor?

7 views (last 30 days)
Hi, I am working with to monitors I used the set(0,'defaultFigurePosition',[desired position]) to change the position of the figures. This does work when I do a plot or an image after, but not for the imshow function. What can I do?
  1 Comment
Rik
Rik on 2 Jul 2018
Doesn't explicitly setting the parent axes work? (or even better: skip imshow in favor of the more low-level image function)

Sign in to comment.

Accepted Answer

Walter Roberson
Walter Roberson on 2 Jul 2018
imshow() will test to see if the current axes is in the default position that an axes would be placed in if it were the only axes in the figure. If the current axes position is something different, it will delete all of the axes in the figure and create an new axes to draw into, which should get you into a position according to the current figure position. However it would not astonish me at all if the position calculations it used were wrong for the case of figures on alternate monitors.
So... Don't use imshow() for anything other than quick-and-dirty displays. If you care about details of your image size and position, then use image() or imagesc() instead.

More Answers (0)

Categories

Find more on Environment and Settings in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!