Effacer les filtres
Effacer les filtres

How do i using scatter plot in matlab to plot 2D or 3D data with new labels ?

1 vue (au cours des 30 derniers jours)
Dear experiences
i have a dataset stored in an excel file, where data has labels from A1..An as in the following:
states Dim1 Dim2 part
A27 0.000961859 0.030987232 1
A127 0.015515794 0.047256875 1
A34 0.063094311 -0.188401909 2
A47 0.069889903 -0.162175315 2
A12 -0.351944163 -0.092892019 3
A112 0.108680014 -0.297203971 4
My questions are :
  1. How i can using scatter plot in matlab to plot the above labels as in the attached figure?
  2. Is there any option to plot every collection of points with distinct color like ( part1=black, part2=red, etc. )?
  3. fianlly, i need to create labels for every collection, my labels are part1, part2, part3, part4) based on my dataset, so i hope to this property can be performed based on Dim1 and Dim2 values range.
thanks for any suggestion.
  4 commentaires
KSSV
KSSV le 9 Fév 2017
Then do you have these Ai's separately for each cluster?
ahmed obaid
ahmed obaid le 9 Fév 2017
Yes, i have it.. but i would like to plotting it according to its x,y values..

Connectez-vous pour commenter.

Réponse acceptée

Star Strider
Star Strider le 9 Fév 2017
This will get you started:
[D,S] = xlsread( . . . );
D = [-0.005859903 0.003131757
-0.009648814 0.001774854
-0.006499227 0.003332951
-0.007080218 0.00482714];
S = {'A1'
'A2'
'A3'
'A4'};
figure(1)
text(D(:,1), D(:,2), S, 'FontSize',8)
axis([min(D(:,1)) max(D(:,1)) min(D(:,2)) max(D(:,2))])
  2 commentaires
ahmed obaid
ahmed obaid le 9 Fév 2017
Very good point, i have modified my question also,now i created a new columns contain the labels for my data, so how to plot points in similar part with color differ from other part, where part is a columns can contain any values. thanks
Star Strider
Star Strider le 9 Fév 2017
Rather than rewrite the data, I added a couple points and changed the code to provide different coloured markers for the various values of ‘part’.
This works:
D = [-0.005859903 0.003131757 1
-0.009648814 0.001774854 2
-0.006499227 0.003332951 3
-0.007080218 0.00482714 4
-0.351944163 -0.092892019 3
0.108680014 -0.297203971 4];
S = {'A1'
'A2'
'A3'
'A4'
'A12'
'A112'};
figure(1)
hs = scatter(D(:,1), D(:,2), 50, D(:,3), 'filled')
text(D(:,1)+0.001, D(:,2), S, 'FontSize',7, 'HorizontalAlignment','left')
set(hs, 'Marker', 's')
axis([min(D(:,1))-0.001 max(D(:,1))+0.001 min(D(:,2))-0.001 max(D(:,2))+0.001])
You will have to experiment to get the results you want with your data.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Data Distribution Plots dans Help Center et File Exchange

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by