Finding maximal value in rows then aligning rows in order based on their increasing values

4 views (last 30 days)
I have data that that is in rows of 300 data points. Each of these data points has a maximal value over the 300 data points. I have the following code:
d=data;
h=heatmap(d2,'ColorMap',jet,'ColorScaling','scaledrows');
grid off
I want to order the rows so that the max values are increasing order. So if maximal value happens at the 10th point of 300 then it should go before one where max value is happening at 20th out of 300. I have tried indexing with max, but not sure how to use that to order them how I want.
I attached an example matrix of data consisting of eight rows of 300.
Any help would be greatly appreciated!

Accepted Answer

Matt J
Matt J on 8 Dec 2017
[~,idx0]=max(data,[],2);
[~,idx1]=sort(idx0);
data_sorted=data(idx1,:);

More Answers (0)

Categories

Find more on Data Distribution Plots 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!