What does this code mean? set(gcf, 'units','n​ormalized'​,'outerpos​ition',[0 0 1 1]);

What does this code mean?
set(gcf, 'units','normalized','outerposition',[0 0 1 1]);

7 Comments

@Teemu: All your questions have the same body ";". Please stop this, because all other users of this forum show, how to post a question in a clear and understandable manner. Use a short title and insert the question in the body. This would help to support the quality of the forum. Thanks.
Or has there been a question and you have deleted it after you got an answer?!
If I remember, I won't bother to answer any questions from Teemu anymore.
@Sean and Azzi: Has there been a question at first or is this only a strange layout idea of Teemu?
@Jan, The question is in the title; frankly I like this format well enough. I know exactly what I'm getting into before clicking on anything.
@Sean: Thanks. Perhaps this style is more convenient, when someony is used to read tweeds or rss feeds. I am so happy with the power to format code, in comparison to CSSM, that I do not like the just-title style.
In the new MATLAB you'll need to set figure size by the code below, the previous syntax no longer works
fig=gcf;
fig.Units='normalized';
fig.OuterPosition=[0 0 1 1];
That's not correct, sipsj11. The newer [object].[property] syntax will not work in older (pre-R2014b) releases of MATLAB, but the older set-based syntax will work in older and newer releases.

Sign in to comment.

 Accepted Answer

Set ( set ) the current figure ( gcf ) to have 'Units' be 'normalized' and the 'outerposition', i.e. the actual borders of the figure to be at the bottom left corner (0,0) and span the whole screen (1,1).
Of you could just run it :)
And look at the doc:
doc set
doc figure %click on figure properties

More Answers (1)

set(gcf, 'units','normalized','outerposition',[0 0 1 1]);
% 'units','normalized' : the unit can be
Units: [ inches | centimeters | normalized | points | {pixels} | characters ]
'outerposition',[0 0 1 1]); the position of your figure [x0,y0,width,height] for normalized unit the min is 0 and the max is 1
try
set(gcf, 'units','centimeters','outerposition',[0 0 20 10]);

6 Comments

to get all figure properties type in command windows
set(gcf)
@Azzi, not completely true:
get(gcf) %shows all properties
set(gcf) %shows only user-settable properties
by all, I meant all user-settable properties. That's what is needed in his case
now I understand the meaning of that and I know how to use it. Thanks for you answers!
How could works outer positions for subplots? How can I fix double x axis scale ? How can I know the position for each subplot?
MATLAB does not care whether an axes was generated with subplot(): you can still get the axes OuterPosition or Position property.
If you want to know position of each subplot, then set the Units for each of the axes to Pixels, and then the Position properties can be compared easily.

Sign in to comment.

Categories

Find more on Creating, Deleting, and Querying Graphics Objects in Help Center and File Exchange

Tags

Asked:

on 12 Feb 2013

Commented:

on 13 Dec 2017

Community Treasure Hunt

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

Start Hunting!