Fixing a choppy plot

18 次查看(过去 30 天)
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]);

采纳的回答

Image Analyst
Image Analyst 2022-6-30
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 个评论
Joshua Leiter
Joshua Leiter 2022-6-30
Awesome! Thanks this solved my problem! I appreciate the help!
Image Analyst
Image Analyst 2022-6-30
If youi want the green spot to be on top, you can plot it last, after everything else has plotted. Thanks for Accepting. 🙂

请先登录,再进行评论。

更多回答(1 个)

William Rose
William Rose 2022-6-30
编辑:William Rose 2022-6-30
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 个评论
Joshua Leiter
Joshua Leiter 2022-6-30
Oooo! This is great! Thanks this also really helps! I appreciate all the syntaxical things I missed! No wonder it wasn't working.... The MarkerFaceColor comment is really helpful too

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Line Plots 的更多信息

产品


版本

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by