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

 Risposta accettata

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 Commento

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

Accedi per commentare.

Più risposte (0)

Categorie

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by