如何在MATLAB中实现以下功能的3D绘图?
f(x,y)=log(1+ (min(x,y))^2/(4*y));
我想创建一个作为x
和y
函数的f
的3D绘图。x
和y
是非负数,因此它们的范围可以从0到任何正数,如10。
我试着用surf
和meshgrid
绘制这个图,但它不起作用,因为我有一个逐点最小化。
发布于 2021-08-29 08:43:22
首先,使用meshgrid创建x和y:
[x,y] = meshgrid(0:0.5:10,0:0.5:10);
然后计算函数并绘制:
k(:,:,1)=x;
k(:,:,2)=y;
% because x and y are 2d matrices in meshgrid, I defined 3d matrix k to compute minimum in third dimension:
z=log((1+ (min(k,[],3)).^2)./(4*y));
surf(x,y,z)
https://stackoverflow.com/questions/68954845
复制相似问题