我正在尝试使用Matlab创建这些3D形状以用于说明目的(请参见下图)。我认为冲浪是我应该使用的功能;但是,我们还不清楚我应该用什么函数来表示这些形状。有人可以提出一个例子吗?感谢。
一个。
编辑1:
感谢Trogdor和PetrH的回复。
目前,我正在尝试绘制更锐利的形状。例如,z = x。^ 2 + y。^ 2;可以绘制正常的杯形。但是,我想绘制如右下图所示的子图。尝试了几个不同的功能,但没有工作。感谢您的任何提示!
编辑2:
使用z = x。^ 2 -4 * x + y。^ 2-4 * y;可以使形状更平坦。仍然没有办法让它变得尖锐。
答案 0 :(得分:5)
您可以使用meshgrid生成x和y矩阵以插入z函数。例如:
[x,y] = meshgrid(-10:10);
z = x.^2 + y.^2;
figure;surf(z);
将生成类似于第一个数字的图。 第二个数字是相同的,但将z定义为:
z = y.^2;
等等。
编辑:第三个数字是马鞍,使用
找到z = x.^2 - y.^2;
感谢PetrH指出这一点。
第四和第五是前两个的反转。
z = -x.^2;
z = -x.^2 - y.^2;