Vill plotta en cylinder i rummet
Hej, har två ekvationer som jag vill rita upp för att studera skärningen.
Får inte till ekvation två. Vad jag har gjort är att göra en parametrisering där och för sen skriver jag koden:
% x^2+4y^2=4
t=linspace(0,2*pi);
x1=2*cos(t); y1=sin(t);
p = plot3(x1,y1,t);
p.LineWidth = 2;
Hur kan jag få ytan av en cylinder och inte en spiral? tänker att jag säkert måste använda surf, men får inte till det.
Edit: Fick till detta. Verkar funka. Hur kan jag göra så att cylindern sträcker sig lite längre upp än z=2? rör jag meshgrid så blir det kalabalik.
clf
clear
clc
[X,Z]=meshgrid(-2:0.1:2);
Y=abs(sqrt((4-X.^2)/4));
surface(X,Y,Z)
hold on
surface(X,-Y,Z)
axis equal
rotate3d on
zlim([-8 8])
Kanske såhär du vill göra? Du angav bara en dimension innanför meshgrid och då gör den likadant i båda dimensionerna.
[X,Z]=meshgrid(-2:0.1:2,-5:0.1:5);
>> help meshgrid
...
[X,Y] = meshgrid(x) is the same as [X,Y] = meshgrid(x,x), returning
square grid coordinates with grid size length(x)-by-length(x).
Matsmats skrev:Kanske såhär du vill göra? Du angav bara en dimension innanför meshgrid och då gör den likadant i båda dimensionerna.
[X,Z]=meshgrid(-2:0.1:2,-5:0.1:5);
>> help meshgrid
...
[X,Y] = meshgrid(x) is the same as [X,Y] = meshgrid(x,x), returning
square grid coordinates with grid size length(x)-by-length(x).
Ja, tack! fungerade alldeles utmärkt!