How to plot a plot that has multi coordinates in one x coordinate?

How to plot a plot that has multi coordinates in one x coordinate? Please see attached image.

 Accepted Answer

A good strategy for these kinds of plots is to treat it as if the numbers are 1 to 15, and then just change the labels
y=rand(1,15);
x=1:15;
scatter(x,y,'x')
set(gca,'XTick',1:15,'XTickLabels',1:3)
for i = 1:5
xline(i*3+.5,'Label',"ZONE " + i, 'LabelHorizontalAlignment', 'left')
end
box on
But you can also use tiledlayout effectively for this kind of thing by setting the TileSpacing property to 'none'
figure
t=tiledlayout(1,5,'TileSpacing','none');
for i = 1:5
scatter(nexttile,1:3,rand(1,3),'x')
ylabel("ZONE " + i) % you might want to use the text function for the labels...as this is awkward
box on
end
linkaxes(t.Children)
xlim([.5 3.5])
set(t.Children(1:4), 'YTickLabel', [])
xlabel(t,'Case Number')

1 Comment

Thank you very much, this was a very good plot and identical to the question.

Sign in to comment.

More Answers (0)

Categories

Products

Community Treasure Hunt

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

Start Hunting!