.fig file places saved figure in a different position than that originally specified

29 vues (au cours des 30 derniers jours)
I create a figure and set it's position using set(gcf,'position'...), and then use savefig to save the figure in a file. When I then double-click on the .fig file, it comes up in a position different than the one originally specified. Is there a way to keep the figure position intact in the saved .fig file?
  7 commentaires
Clay Fulcher
Clay Fulcher il y a environ 8 heures
Benjamin, I am using release 2025b.
Clay Fulcher
Clay Fulcher il y a environ 8 heures
Walter, yes I am using a 2nd monitor. It creates the figure with the original coordinates on monitor 1, and then reproduces the figure in the new position on Monitor 2.

Connectez-vous pour commenter.

Réponse acceptée

Benjamin Kraus
Benjamin Kraus il y a environ 9 heures
Some questions:
  • What release of MATLAB are you using?
  • Do you see the same issue if you set the figure position to something much smaller?
  • What is the output from get(groot,'MonitorPositions')
What I suspect may be happening is that MATLAB is trying to make sure your figure is not clipped by the edge of the screen, so it is shifting your figure to avoid hitting the edges of the screen.
Based on the position you specified, it seems like you may be trying to make the figure maximized. Can you use WindowState instead?
f = figure;
f.WindowState = "maximized";
  1 commentaire
Clay Fulcher
Clay Fulcher il y a environ 8 heures
Benjamin,
You were correct. Thank you, using "maximized" fixed the issue.
Release 2025b.
The issue did not occur when I made the figures smaller.
The output from get(groot,'MonitorPositions') is
>> get(groot,'MonitorPositions')
ans =
1 1 2560 1440
2561 1 2560 1440

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Printing and Saving dans Help Center et File Exchange

Produits


Version

R2025b

Community Treasure Hunt

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

Start Hunting!

Translated by