首页 行业资讯 宠物日常 宠物养护 宠物健康 宠物故事

向大虾求助!matlab中怎么实现隔一定的距离画等高线。。。

发布网友

我来回答

3个回答

热心网友

Q0=0:0.01:2*pi;

r0=0:0.1:10;

Q=repmat(Q0,length(r0),1);

r=repmat(r0',1,length(Q0));

x=r.*cos(Q);

y=r.*sin(Q);

z=x.*x+y.*y;

%以上是任意的构造了一个二元函数,下面做它的等高线

%做等高线一般先取到z的最大值和最小值,两者之差除以你想做的等高线条数,便得到你想要的两条线之间的差距

zmax=max(max(z));

zmin=min(min(z));

%这里取15条,你自己随便取,你想要两线距离一定的话,就可以直接是n0=?

%不过你看下面语句便知no应被(zmax-zmin)整除,才能把z最大值和最小值时的等高线也画上去

n0=(zmax-zmin)/15;

for nn0=zmin:n0:zmax

[cs,h]=contour(x,y,z,nn0);%做等高线

clabel(cs,h,'fontsize',7,'color','k');

hold on;

end

热心网友

使用contour(x,y,z,n)可以得到n条等高线

热心网友

z = peaks;
[c,h] = contour(z,[-10:2:10]); %每隔2画一条等值线
clabel(c,h) %标注

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com