不规则间隔数据的轮廓图

我有一个x,y,z数据数组,坐标不规则地间隔开。此外,坐标也不会填充规则的矩形空间。下面显示的是我的数据的坐标图。

coordinates of my data

我要绘制的是这组数据的轮廓图。我已经尝试过 scipy.interpolate.griddata 将我的数据隐藏到网格中,并使用 plt.contourf 绘制等高线图。

x_min,y_min = 0,0
x_max,y_max = x_val.max(),y_val.max()
xi = np.linspace(x_min,x_max+0.001,500)
yi = np.linspace(y_min,y_max+0.001,500)
zi = griddata((x_val,y_val,z_val,(xi[None,:],yi[:,None]),method='cubic')

plt.figure()
CS = plt.contourf(xi,yi,zi,200,cmap=plt.cm.jet)
plt.show()

下面是我得到的等高线图。显然,凸包未正确遵循我的数据边界,并在某些空白区域中导致错误的数据插值。我可以知道如何解决此问题吗?

the contour map that i got

-----------更新11/07 ------------

您好,我针对此问题做出了解决方法,但这有点用武力。不知道是否有人有更好的主意。我的方法是在griddaa zi中手动将不需要的区域值设置为np.nan。请参考图片以了解我的工作。

set the zi array values in the black box area to np.nan

correct result

wyb001 回答:不规则间隔数据的轮廓图

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3146483.html

大家都在问