【发布时间】:2015-02-26 18:27:45
【问题描述】:
我正在尝试在 Matlab 中创建 3D 绘图,但我几乎没有经验。我真的很想绘制这些方程式所描述的数字:
x = cos(u)*(2 + cos(v))
y = sin(u)*(2 + cos(v))
z = x^2 - y^2 + 2*x*y*tan^2(v)
-pi <= u <= pi, -pi <= v <= pi
哪个情节本来应该是这样的
(来源:paulbourke.net)
我已经尽力了并想出了:
% volume data
u = linspace(-pi,pi,40);
v = linspace(-pi,pi,40);
[u, v] = meshgrid(u, v);
X =cos(u).*(2 + cos(v));
Y =sin(u).*(2 + cos(v));
Z =(X.^2)-(Y.^2)+(X.*Y.*2.*((tan(v)).^2));
surf(X,Y,Z,'FaceColor','none','EdgeColor','interp')
%shaded surface
colormap(jet)
camlight right
我得到以下信息:
怎么了?
【问题讨论】: