A border/perimeter/rectangle around the inset plot, in a subplot environment
15 views (last 30 days)
Show older comments
In the following subplot environment, how can I draw a red border/perimeter/rectangle around/wrapping the inset plot?
fig = figure;
for i = 1 : 6
subplot(3,2,i)
scatter(rand(1,10),rand(1,10))
end
axes(fig,'Position',[.1 .2 .2 .2])
plot(1:5,rand(1,5))
0 Comments
Accepted Answer
Voss
on 26 Jun 2024
Here are a couple of options:
fig = figure;
for i = 1 : 6
subplot(3,2,i)
scatter(rand(1,10),rand(1,10))
end
ax = axes(fig, ...
'Position',[0.02 0.12 0.29 0.29], ...
'Visible','off', ...
'ClippingStyle','rectangle', ...
'XLim',[-0.01 1.01], ...
'YLim',[-0.01 1.01], ...
'XTick',[], ...
'YTick',[]);
line(ax, ...
'XData',[0 0 1 1 0], ...
'YData',[0 1 1 0 0], ...
'Color','r', ...
'LineWidth',3, ...
'LineJoin','miter', ...
'Clipping','off')
axes(fig,'Position',[0.1 0.2 0.2 0.2])
plot(1:5,rand(1,5))
xlabel('xlabel')
ylabel('ylabel')
fig = figure;
for i = 1 : 6
subplot(3,2,i)
scatter(rand(1,10),rand(1,10))
end
axes(fig,'Position',[0.02 0.12 0.29 0.29], ...
'Box','on', ...
'XTick',[], ...
'YTick',[], ...
'XColor','r', ...
'YColor','r', ...
'LineWidth',3)
axes(fig,'Position',[0.1 0.2 0.2 0.2])
plot(1:5,rand(1,5))
xlabel('xlabel')
ylabel('ylabel')
See Also
Categories
Find more on Subplots 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!