How to color the atomic position in 3D scatter plot

2 vues (au cours des 30 derniers jours)
Sara
Sara le 11 Sep 2020
Modifié(e) : Sara le 11 Sep 2020
Hi there,
I have a txt data from simulated image. I load the txt and use scattering 3D fucntion to plot the x,y and z coordination.
what I want to do is colot the Fe and O and visualize them in 3D scattering. I want to distangush between the Fe and O.

Réponse acceptée

Star Strider
Star Strider le 11 Sep 2020
Try this:
T1 = readtable('Fe3O4_1.txt');
x = T1.Var4;
y = T1.Var5;
z = T1.Var6;
[AtomLbl,ID] = findgroups(T1.Var2);
FeLbl = (AtomLbl == 1);
OLbl = (AtomLbl == 2);
figure
Feh = scatter3(x(FeLbl), y(FeLbl), z(FeLbl), AtomLbl(FeLbl)*20, AtomLbl(FeLbl), 'filled');
hold on
Oh = scatter3(x(OLbl), y(OLbl), z(OLbl), AtomLbl(OLbl)*30, AtomLbl(OLbl), 'filled');
hold off
grid on
axis('equal')
colormap([1 0 0; 0 1 0])
legend([Feh, Oh], ID)
xlabel('x')
ylabel('y')
zlabel('z')
producing:
.
  2 commentaires
Sara
Sara le 11 Sep 2020
prefect answer, thank you for your help.
Star Strider
Star Strider le 11 Sep 2020
Thank you! As always, my pleasure!

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Orange dans Help Center et File Exchange

Produits


Version

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by