如何在matlab中绘制圆形三维图

时间:2014-03-22 13:32:43

标签: matlab

我想在matlab中绘制此函数:sin(4*x)*cos(4*y)在磁盘上

这就是我的进展:

syms x y;
f=@(x,y) sin(4*x)*cos(4*y);
ezmesh(f,'circ')

此方法适用于f=@(x,y) sin(2*x)*cos(2*y);

但是有一个更快速变化的函数,如f=@(x,y) sin(4*x)*cos(4*y);,ezmesh错误地将这些变化用于不连续性。 问题是我无法使用' circ'参数并增加ezmesh同时使用的点数(ezmesh不接受它)

还有其他办法吗?

1 个答案:

答案 0 :(得分:0)

我不确定是否可以通过添加其他参数来完成。但是,如果你想要一个快速而又肮脏的方式,那么你可以去:

x = -2*pi:0.1:2*pi;
y = -2*pi:0.1:2*pi;
[xx, yy] = meshgrid(x,y);
zz = sin(4*xx).*cos(4*yy);
zz(xx.^2 +yy.^2 >(2*pi)^2) = 0;
surf(xx,yy,zz);

产生:

sin(4x)*cos(4x) on Disk