Re-arrange cell accordingly to a sorted vector

2 views (last 30 days)
Hello,
I am using a bar plot to showcase values from references, so the X axis has no relevance. However I calculate in a non-sorted way the Y value and I get also a cell that references this Y values. So I would like to first sort Y and then sort the legend cell to be sorted in the same way. For example I have this as output
Y =
3 7 1 2
legend =
1×4 cell array
{'legend1'} {'legend2'} {'legend3'} {'legend4'}
Now I want Y to become Y = 1 2 3 7 and the legends to follow such as in:
newY = sort(Y)
newY =
1 2 3 7
newLegend = sort(legend)
newLegend =
1×4 cell array
{'legend3'} {'legend4'} {'legend1'} {'legend2'}
How can I do this? I am using R2020a

Accepted Answer

Fangjun Jiang
Fangjun Jiang on 20 May 2020
Edited: Fangjun Jiang on 20 May 2020
utilizde another output of sort(). Note legend() is a function.
[newY, index]=sort(Y)
newLegend=oldLegend(index)

More Answers (0)

Tags

Community Treasure Hunt

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

Start Hunting!