How to Specify the Size of Rectangles in a figure?

I have drawn 3 rectangles and put them in a struct as follows. It occupies the whole figure1 area. How to make them so small that just, for example, these rectangles just take one fifth of the figure1’s area?
hfig = figure;
for i = 1 : 3
W = 4;
X = i.* W;
Y = 0;
H = 8;
R = rectangle;
R.Position = [X Y W H];
G(i).r = R;
end

 Risposta accettata

The rectangle is a child of an axes object. The axes is fit to the included data automatically, if you do not specify its data limit.
hFig = figure;
hAxes = axes('NextPlot', 'add', 'XLim', [0, 20], 'YLim', [-1, 10]);
W = 4;
Y = 0;
H = 8;
for i = 1 : 3
X = i.* W;
R = rectangle;
R.Position = [X Y W H];
G(i).r = R;
end

1 Commento

Rightia Rollmann
Rightia Rollmann il 21 Feb 2017
Modificato: Rightia Rollmann il 21 Feb 2017
Thanks, but still one problem:
How can I define the struct G as the child for figure? Further information here.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Creating, Deleting, and Querying Graphics Objects in Centro assistenza e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by