matlab画等高线图( z = f(x,y) )
Posted aixuexihs
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了matlab画等高线图( z = f(x,y) )相关的知识,希望对你有一定的参考价值。
步骤:
1、产生独立变量,为带有两个变量 x 和 y 的集合,meshgrid是一个可以建立独立变量的函数,产生矩阵元素,元素x和y按照指定的范围和增量来产生。
2、输入要使用的函数;
3、调用contour(x,y,z)命令。
例如为z = x2+y2作等高线图:
[x,y] = meshgrid(-5:0.1:5, -3:0.1:3);
z = x.^2 + y.^2;
contour(x,y,z);
但应该为其添加更多引用标签信息,可以使用set命令来实现:
[C,h] = contour(x,y,z);
set(h, ‘ShowText‘, ‘on‘, ‘TextStep‘, get(h,‘LevelStep‘)*2);
例如为z = cos(x)*sin(y)作等高线图:
z = cos(x).*sin(y);
[C,h] = contour(x,y,z);
set(h, ‘ShowText‘,‘on‘,‘TextStep‘,get(h,‘LevelStep‘)*2);
我们还可以调用contour3命令把等高线画成三维的,如果调用contour3(z,n),那么将产生有n个级别的等高线,
例如接着上面的函数继续调用 contour3(z,10); 可产生更复杂的三维图像。
例如为z = ye-(x2+y2)作等高线图,-2≤x,y≤2:
[x,y] = meshgrid(-2:0.1:2);
z = y.*exp(-x.^2-y.^2);
contour(x,y,z),xlabel(‘x‘),ylabel(‘y‘);
下面要产生三维等高线图,可输入contour3(x,y,z,30);
也可以添加surface命令,将图像装饰漂亮点:
surface(x,y,z,‘EdgeColor‘,[.8,.8,.8],‘FaceColor‘,‘none‘), grid off, view(-15,20)
最终可产生如下图像:
以上是关于matlab画等高线图( z = f(x,y) )的主要内容,如果未能解决你的问题,请参考以下文章