Plot a 3d-plane in MATLAB??

5 views (last 30 days)
Nghia
Nghia on 22 May 2014
Edited: Nghia on 26 May 2014
I want to plot a 3d-plane (x=0) in MATLAB, (-2<=y<=2) and limited by the line z=4-y^2. Here's my code :
y=linspace(-2,2,50);
z=4-y.^2;
[Y Z]=meshgrid(y,z);
X=0*Y+0*Z;
mesh(X,Y,Z);
axis tight;
Can you give me any hints???? thank you very much!!
  2 Comments
Walter Roberson
Walter Roberson on 22 May 2014
Edited: Walter Roberson on 22 May 2014
When you say that the plane is to be limited by that z, and that you want to draw plot it, then what difference is there compared to plotting a single curved line in 3 space?
Nghia
Nghia on 22 May 2014
Edited: Nghia on 22 May 2014
I'm not clear what you're trying to ask but the code which I posted plot just a single curved line in 3 space, but what I want is to plot a plane x=0 and limited by both the line z=0 and z=4-y^2 I mean that I want to use to plot a plane surfc(x,y,z)

Sign in to comment.

Accepted Answer

Hugo
Hugo on 22 May 2014
This solution is based on patch
y=-2:.01:2;
z=4-y.^2;
numy=length(y);
% Constructing the vertices
V=zeros(numy,3);
for iy=1:numy,
V(iy,:)=[0,y(iy),z(iy)]; % Vertices in the parabola
V(iy+numy,:)=[0,y(iy),0]; % Vertices in the y axis
end
% Constructing faces
F=zeros(numy-1,4); for iy=1:numy-1, F(iy,:)=[iy,iy+1,iy+1+numy,iy+numy]; end
patch('Vertices',V,'Faces',F)
The plot may look like a line. You just need to rotate it and you will see the figure in 3D.
Hope this helps.
  2 Comments
Nghia
Nghia on 22 May 2014
thank you for your help!
Nghia
Nghia on 26 May 2014
Edited: Nghia on 26 May 2014
I have tried your code then I rewrite like this
%code patch('Vertices',V,'Faces',F,'FaceColor',[1 0 0])
but it doesn't change the face's color and it's still black. How can I fix this?

Sign in to comment.

More Answers (0)

Tags

No tags entered yet.

Community Treasure Hunt

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

Start Hunting!