如何使用等高线图绘制for循环中的常量(不是特定高度的z值)以跨越域?

时间:2018-02-28 07:53:44

标签: matlab matlab-figure contour

enter image description here

我将我的大域分解为较小的域并在小域(矩形)内,保守的数量是不变的。我的任务是必须在整个域上绘制该数量。我听说等高线图适用于此但我继续得到一个空的空白结果。 for循环的目的是在域中前进并在下一个域中绘制数量。

我基本上是尝试使用特定值填充链接中的每个矩形。

假设se是一个包含常量的数组。 谢谢!

n2=0
count=1
for i=1:ny-1;
    for j=1:nx-1;
        x1=X(i,j);
        y1=Y(i,j);
        x2=X(i,j+1);
        y2=Y(i,j+1);
        x3=X(i+1,j+1);
        y3=Y(i+1,j+1);
        x4=X(i+1,j);
        y4=Y(i+1,j);

        nl=[n2*nx+j,n2*nx+j+1,n2*nx+j+nx,n2*nx+j+1+nx];

        xcd=(x1+x2+x3+x4)/4;
        ycd=(y1+y2+y3+y4)/4

        [mx,my]=meshgrid(x1:x2,y1:y3)

        sp=se(count)*ones(size(mx))

        plot([x1,x2,x3,x4],[y1,y2,y3,y4],'k')
        hold on
        contourf(mx,my,sp)
        colormap default
        colorbar
        hold on

        axis([0,55,-25,25])
        count=count+1
    end
    n2=n2+1
end

1 个答案:

答案 0 :(得分:0)

感谢压倒性的回应..使用patch()而不是countour。