Displaying figures with differents colors for matlab
Mostra commenti meno recenti
i have matlab code that generate 3D points , so i want to plot each 3D points with different color
my last code for generat all points are
figure(i),plot3(mx,my,mz,'b*');
and this one plot all peaks but with same color witch are blue and the image below show u how my code work
Risposte (1)
Adam
il 29 Mag 2014
Hi Malstheet, try to convert the vertors mx , my and mz into the diagonal matrices. Also, erase the letter b defining the blue color. The color of your points should be different, however, it will repeat in a cycle...
Try this:
plot3(diag(mx),diag(my),diag(mz),'*');
Hope it helps you. Adam
4 Commenti
Adam
il 29 Mag 2014
Also, see the function scatter3 , which enables changing color of each point by some rule (e.g. according to the norm...) -- CData property.
Try this:
scatter3(mx,my,mz,'*','CData',sqrt(mx.^2+my.^2+mz.^2));
Malstheet
il 29 Mag 2014
Malstheet
il 29 Mag 2014
Adam
il 30 Mag 2014
It should have different colors. Could you specify your definition of mx , my and mz vectors?
Try this:
mx = linspace(1,100,100);
my = linspace(1,100,100);
mz = linspace(1,100,100);
scatter3(mx,my,mz,'*','CData',sqrt(mx.^2+my.^2+mz.^2));
CData could be defined in couple ways. For (1xN) vectors (or transpose) the CData vector would have same size (1xN). Each value defines the color of corresponding point. E.g. Point mx(1),my(1),mz(1) will have color CData(1) - according to the value related to the range.
Categorie
Scopri di più su Annotations in Centro assistenza e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!