![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/189840/image.png)
How to split a matrix for different plots?
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
sia ben
el 9 de Jul. de 2018
I have a matrix which the first column are 1 or 2 or 3 or 4 or 5 . I want to done a function and plot of datas in all rows which have in the first column same numbers. For example I habe a matrix like [ 1 23 240;2 22 100;2 44 900;1 33 800,... ]. Now I want plot a function to 1. and 4. row (f(23)& f(33))in red color and the 2. &3. row (f(22) & f (44)) with blue color. is there any solution with out loops?
0 comentarios
Respuesta aceptada
Stephan
el 9 de Jul. de 2018
Editada: Stephan
el 9 de Jul. de 2018
Hi,
for your matrix A:
>> A = [ 1 23 240;2 22 100;2 44 900;1 33 800]
A =
1 23 240
2 22 100
2 44 900
1 33 800
to get the data splitted without for loop use:
>> A1 = [A(A(:,1)==1,2),A(A(:,1)==1,3)]
A1 =
23 240
33 800
>> A2 = [A(A(:,1)==2,2),A(A(:,1)==2,3)]
A2 =
22 100
44 900
Now you have splitted data which you can plot however you want:
>> plot(A1(:,1),A1(:,2),'r')
>> hold on
>> plot(A2(:,1),A2(:,2),'b')
which gives:
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/189840/image.png)
Best regards
Stephan
0 comentarios
Más respuestas (0)
Ver también
Categorías
Más información sobre Loops and Conditional Statements en Help Center y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!