MATLAB Answers

Bounding box around image

71 views (last 30 days)
Owen Gebler
Owen Gebler on 18 Oct 2018
Commented: Owen Gebler on 18 Oct 2018
I'm attempting to show an image within a plot, with a bounding box around the image. However, the following results in an image without a bounding box, despite the box being explicitly asked for:
clear
close all
% Create figure
fig1 = figure;
% Random plot
plot( (1:10), randi(10,1,10) )
% Create new axes within existing
axes('pos',[.1 .6 .5 .3])
% Load and show image
imshow('coins.png')
a1 = gca;
% Try turning box on and redrawing
a1.Box = 'on';
drawnow;
Any suggestions as to how this might be resolved? I'm hoping there's a simpler way than having to manually draw a box over the top...

Accepted Answer

Image Analyst
Image Analyst on 18 Oct 2018
Try this:
% Random plot
plot( (1:10), randi(10,1,10), 'LineWidth', 2)
grid on; % Optional
% Create new axes on top of the existing plot.
axes('Position',[.1 .6 .5 .3])
% Load and show image
imshow('coins.png')
axis('on', 'image'); % This is the KEY LINE OF CODE!
Also see this link to learn how to format your code. http://www.mathworks.com/matlabcentral/answers/13205#answer_18099
  1 Comment
Owen Gebler
Owen Gebler on 18 Oct 2018
That's exactly what I was after, thanks!

Sign in to comment.

More Answers (1)

Matt J
Matt J on 18 Oct 2018
  1 Comment
Owen Gebler
Owen Gebler on 18 Oct 2018
That's potentially a useful addition if more flexibility over the properties of the border is required. Thanks!

Sign in to comment.

Categories

Tags

Community Treasure Hunt

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

Start Hunting!