How to sort a data set for plotting

I have here two data sets, one I want to use as my X and the other the Y axis.
For the X, which is my TNF placeholder values below, I want to simply sort the data array from least to greatest. Which I already know how to do. The Y values, TPF, are also shown below and correlate specifically to the respective index of the TNF array.
TNF = [e, a, d, c, b]
TPF = [e, a, d, c, b]
Sorted, it looks like:
TNF = [a, b, c, d, e]
So how to I get the TPF values to sort with the TNF values and not independently from least to greatest?

 Respuesta aceptada

Star Strider
Star Strider el 30 de Nov. de 2018
Ise the second output of the sort function to return the indices, then use those to map ‘TPF’:
TNF = ['e', 'a', 'd', 'c', 'b']
TPF = ['e', 'a', 'd', 'c', 'b']
[TNFsorted, idx] = sort(TNF);
TPFsorted = TPF(idx)

4 comentarios

Jacob Davidson
Jacob Davidson el 1 de Dic. de 2018
Editada: Jacob Davidson el 1 de Dic. de 2018
Alright, that made sense when I read it. I tried it, however, and I think I'm going about it wrong. Here's what I have:
[TNFSorted, idx] = sort(TNF);
for i = 1:numel(TPF)
TPFSorted(i) = TPF(idx);
end
I'm also receiving the following error:
Unable to perform assignment because the indices on the left side are not compatible with the
size of the right side.
Error in BMITestScript (line 5)
TPFSorted(i) = TPF(idx)
I'm not super experienced with MATLAB and mainly use the documentation here on Mathworks as a guide, so I don't know how to interpret this error very well.
EDIT:
Actually, I did the following without the loop, I was unaware I didn't need to iterate through the entier array to accomplish this. I put in exactly what your code had in the response and it worked perfectly. Thank you so much!
I appreciate your help!
Star Strider
Star Strider el 1 de Dic. de 2018
As always, my pleasure!
Dav
Dav el 31 de En. de 2020
Thanks Star.
Star Strider
Star Strider el 31 de En. de 2020
@Dav — My pleasure!

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Etiquetas

Preguntada:

el 30 de Nov. de 2018

Comentada:

el 31 de En. de 2020

Community Treasure Hunt

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

Start Hunting!

Translated by