注册 登录
编程论坛 Matlab

【求助】关于matlab画等高线图的问题

wannafly2587 发布于 2012-03-23 09:40, 799 次点击
新手学习matlab,想画一个圆形区域的等高线图,这是我编的程序:
    function tjs()
    syms x y
        J=[1 y/sqrt(1-y^2);x/sqrt(1-x^2) 1];
        J_in=inv(J);
        J_in_T=[J_in(1) J_in(2);J_in(3) J_in(4)];
        cond_J=sqrt(J(1)^2+J(2)^2+J(3)^2+J(4)^2);
        cond_J_in=sqrt(J_in(1)^2+J_in(2)^2+J_in(3)^2+J_in(4)^2);
        k=cond_J*cond_J_in/2;
        k_in=1/k;
        ezmesh(k_in,[-1/sqrt(2),1/sqrt(2),-1/sqrt(2),1/sqrt(2)],'circ')  
        view (0,90)
        countour
        title ('1/k')

可是得到的图不是等高线图,而是有不同颜色区域的实心圆
请教高手如何改正啊?
qq984189153,真心求教!
1 回复
#2
wannafly25872012-03-23 09:49
我又修正了一下contour命令:
function tjs()
    syms x y
        J=[1 y/sqrt(1-y^2);x/sqrt(1-x^2) 1];
        J_in=inv(J);
        J_in_T=[J_in(1) J_in(2);J_in(3) J_in(4)];
        cond_J=sqrt(J(1)^2+J(2)^2+J(3)^2+J(4)^2);
        cond_J_in=sqrt(J_in(1)^2+J_in(2)^2+J_in(3)^2+J_in(4)^2);
        k=cond_J*cond_J_in/2;
        k_in=1/k;
        ezmesh(k_in,[-1/sqrt(2),1/sqrt(2),-1/sqrt(2),1/sqrt(2)],'circ')  
        view (0,90)
        contour(J,9)
        title ('1/k')

结果图变成椭圆形了= =!
1