A the surface x->-10:10, y->-10:10, z=0 to a plot of a curve in 3d (using plot3 in Matlab 2014b)?
3 次查看(过去 30 天)
显示 更早的评论
I have a curve in 3-dimensions, corresponding to
xx=0:9; yy=[-5:0 -1:-1:-4]; zz=[1:5 4:-1:0]; plot3(xx,yy,zz,'-o');
I wish to plot a semi-transparent surface corrseponding to x->-10:10, y->-10:10, z=0
How do I add this to the plot? I use Matlab 2014b.
In addition, is there a way to plot such that the axes and their origin will show up in the middle of the figure, and not in the sides?
Thank you!
1 个评论
jonas
2018-10-21
Please do not spam your question. If anything, it makes some people (like me) less inclined to help.
采纳的回答
Star Strider
2018-10-21
Try this:
xx=0:9;
yy=[-5:0 -1:-1:-4];
zz=[1:5 4:-1:0];
figure
plot3(xx,yy,zz,'-o');
hold on
patch([-10 10 10 -10], [10 10 -10 -10], 'r', 'FaceAlpha',0.2)
hold off
grid on
‘... is there a way to plot such that the axes and their origin will show up in the middle of the figure, and not in the sides?’
Not in R2014b. I believe that was added in R2017b.
4 个评论
jonas
2018-10-21
编辑:jonas
2018-10-21
Just to add:
"In addition, is there a way to plot such that the axes and their origin will show up in the middle of the figure, and not in the sides?"
ax = gca;
ax.ZRuler.FirstCrossoverValue = 0;
ax.ZRuler.SecondCrossoverValue = 0;
ax.XRuler.FirstCrossoverValue = 0;
ax.XRuler.SecondCrossoverValue = 0;
ax.YRuler.FirstCrossoverValue = 0;
ax.YRuler.SecondCrossoverValue = 0;
box on
Star Strider
2018-10-21
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Surface and Mesh Plots 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!