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

 Accepted Answer

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 Comment

Thanks, but still one problem:
How can I define the struct G as the child for figure? Further information here.

Sign in to comment.

More Answers (0)

Categories

Find more on Creating, Deleting, and Querying Graphics Objects 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!