How to reorder a categorical axis?
72 views (last 30 days)
Show older comments
I am ploting a set of values aginst an categorical array, however the the categorical axis always appears in the alphabetical order, how can I control the order it appears?
here's an example
x = categorical({'a','b','c','d','e'});
y = [1:5];
scatter(x,y);
how do I plot y aginst x so the x-axis appears in a non-alphabetical order, like b-e-d-a-c.
thanks!
0 Comments
Accepted Answer
Dave B
on 14 Mar 2023
Edited: Dave B
on 14 Mar 2023
Three options to change the order, depending on where you want to change it:
x = categorical({'a','b','c','d','e'});
y = 1:5;
orderedx = reordercats(x,{'b' 'e' 'd' 'a' 'c'});
scatter(orderedx ,y);
x = categorical({'a','b','c','d','e'}, {'b' 'e' 'd' 'a' 'c'});
y = 1:5;
scatter(x,y);
x = categorical({'a','b','c','d','e'});
y = 1:5;
scatter(x,y);
xaxis=get(gca,'XAxis');
xaxis.Categories={'b' 'e' 'd' 'a' 'c'};
More Answers (0)
See Also
Categories
Find more on Annotations 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!