我试图用左下角的区域创建一个countourf情节。轮廓的值在下图中每个矩形的角上提供,网格上的所有其他点的值都为NaN。
我想知道如何通过绘制白色方块右上角的三角形部分来停止countourf图,即如何阻止它插入这两个值。
结束游戏:我想在左下角有一个完整的白色矩形,而不是倒角矩形。
答案 0 :(得分:1)
您正在获取该三角形,因为在该特定方格上您的数据类似于:
[1 2 ;...
NaN 3]
这是一个完全有效的右上角三角形。
因此,您可以插入数据以获得更高的分辨率并使该三角形更小。或者您可以使用patch
在所需位置添加白色方块。
data=rand(8);
data(1:4,1:4)=NaN;
contourf(data)
hold on;
patch([1 1 5 5],[1 5 5 1],'w')
答案 1 :(得分:0)
一边看起来像七个方格,所以我们可以设置
x = 1:7;
[XX,YY] = meshgrid(x); % create x,y grid for the square
ZZ = nan(7); % create number grid for the square
ZZ(1:3,1:3)=ones(3); % set the lower 3x3 to 1
figure;
hold on % hold your plot
plot()% your contour
imagesc(XX,YY,ZZ); % Or similar
这是大纲,我无法确定您需要的确切绘图功能,因为您没有显示您的代码。一般来说,我们的想法是创建一个与等高线图一样大的网格,并将左下方的正方形设置为1
,因此为白色,其余为NaN
,因此不会绘制。