Fixing a choppy plot
17 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Joshua Leiter
le 29 Juin 2022
Commenté : William Rose
le 30 Juin 2022
Hi, I have the following code in Matlab and the red helix is coming out choppy. I am new to this and trying to make it look pretty! I wanted to have the red and blue plots display together, and then place a point on one of them; placing a green point on an intersection would be cool. (I can figure that out math wise, but I don't know how to make the green point "pop out") Thanks for any help!
t = 0:pi/20:10*pi;
xt = sin(t);
yt = cos(t);
plot3(xt,yt,t,'-o','Color','b','MarkerSize',10)
hold on
t5 = 5;
xt5 = sin(5);
yt5 = cos(5);
plot3(t5,xt5,yt5,'MarkerSize',200,'Color','g')
xt = sin(5*t);
yt = cos(5*t);
plot3(xt,yt,t,'-','Color','r','MarkerSize',10)
hold off
axis equal
xlim([-1, 1]);
ylim([-1, 1]);
zlim([0, 5]);
0 commentaires
Réponse acceptée
Image Analyst
le 30 Juin 2022
You don't have many points in t. Try using linspace and specify a larger number.
t = linspace(0, 10*pi, 2000);
xt = sin(t);
yt = cos(t);
plot3(xt,yt,t,'-o','Color','b','MarkerSize',10)
hold on
t5 = 5;
xt5 = sin(5);
yt5 = cos(5);
plot3(t5,xt5,yt5,'MarkerSize',200,'Color','g')
xt = sin(5*t);
yt = cos(5*t);
plot3(xt,yt,t,'-','Color','r','MarkerSize',10)
hold off
axis equal
xlim([-1, 1]);
ylim([-1, 1]);
zlim([0, 5]);
2 commentaires
Image Analyst
le 30 Juin 2022
If youi want the green spot to be on top, you can plot it last, after everything else has plotted. Thanks for Accepting. 🙂
Plus de réponses (1)
William Rose
le 30 Juin 2022
Modifié(e) : William Rose
le 30 Juin 2022
The plot order on the line to plot the green marker was wrong. Fixed. Fill in the marker with MarkerFaceColor, and black outline, to make it pop out. Extend z (time) axis. Add grid to help viewer appreciate the 3D perspective. See attached.
t = 0:pi/20:10*pi;
xt = sin(t);
yt = cos(t);
plot3(xt,yt,t,'-o','Color','b','MarkerSize',10)
hold on
t5 = 5;
xt5 = sin(5);
yt5 = cos(5);
plot3(xt5,yt5,t5,'ko','MarkerSize',15,'MarkerFaceColor','g')
xt = sin(5*t);
yt = cos(5*t);
plot3(xt,yt,t,'-','Color','r','MarkerSize',10)
hold off, grid on
axis equal
xlim([-1, 1]);
ylim([-1, 1]);
zlim([0, 6]);
Good luck!
2 commentaires
Voir également
Catégories
En savoir plus sur Line 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!