Clear Filters
Clear Filters

How to combine subplots so they share axes?

46 views (last 30 days)
Erik J
Erik J on 7 Oct 2018
Answered: jonas on 8 Oct 2018
I have a 2x2 subplot. All four subplots have the same x and y axes. I would like to combine the four subplots so that they share axes, making the plot less busy. So, for example, the east y axis of the west plots would be the west y axes for the east plots. Is there as simple way to do this? I can't seem to find anything. I'm using 2018a. Thank you all!
  5 Comments
dpb
dpb on 8 Oct 2018
Oh...this morning I think I grok. You can reposition the four subplots so they overlay. You'll have to be creative in hiding which axes labels, etc., etc., ... are visible but could probably get something useful.
jonas
jonas on 8 Oct 2018
I'd go straight for one of the FEX functions like tight_subplot (my personal choice, but there are more recent ones).

Sign in to comment.

Answers (1)

jonas
jonas on 8 Oct 2018
Here's an example using the tight_subplot function from FEX
ax = tight_subplot(2,2,0,0.1,.1);hold on
set(ax,'color','none')
set(ax(3:4),'xcolor','none')
set(ax([1 3]),'ycolor','none')
set([ax.XRuler],'tickdirection','both')
set([ax.YRuler],'tickdirection','both')
for i=1:4
axes(ax(i));hold on
plot(rand(10,10))
end
linkaxes(ax,'xy')
. Just add some ticklabels!

Community Treasure Hunt

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

Start Hunting!