HOW TO PLOT DATA BASED ON DATA IN ANOTHER COLUMN

16 vues (au cours des 30 derniers jours)
diala yazbeck
diala yazbeck le 21 Fév 2021
Commenté : Cris LaPierre le 23 Fév 2021
HI!
i have 5 coloumns of data wiht over 1000 entries.
i want to plot column 4 and 5 against each other (x and y respectively) based on the value in column 1.
for example.
for length of coloumns
for value in column 1 = 1
plot corresponsponding column 4 and 5 values
for value column 1 = 2
plot corresponsponding column 4 and 5 vlaues
etc
end
i want to plot the conditions in a different colour as well.
please help :)

Réponses (1)

Cris LaPierre
Cris LaPierre le 22 Fév 2021
What type of plot do you want? If a scatter plot, use gscatter.
% Create data
A=[randi(2,100,1),rand(100,1),rand(100,1)];
A=sortrows(A,2);
ind = A(:,1)==1;
% Create grouped scatter plot
gscatter(A(:,2),A(:,3),A(:,1))
If you prefer a line plot instead, use logical indexing to select your groups. Here's a simple example assuming two groups in column 1.
figure
% Use logical indexing to identify one group
ind = A(:,1)==1;
% Use 'not ==1' syntax to plot second group
plot(A(ind,2),A(ind,3),A(~ind,2),A(~ind,3))
  7 commentaires
diala yazbeck
diala yazbeck le 23 Fév 2021
ignore the data legend!
Cris LaPierre
Cris LaPierre le 23 Fév 2021
What isn't working? gscatter should work fine for any similarly formatted data. The only limiting input right now is the specified colors. Remove the 'rb' input, and see if your code runs for any data file. If it does, then we can worry about specifying color.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Scatter Plots dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by