2
使用mlab.surf()
函数绘制3d曲面时,Nan
值的存在会导致奇数的绘图行为。任何想法我可能做错了将不胜感激。使用Mayavi 3d曲面蒙板使用mlab.surf()
In[37]: import mayavi
In[38]: print mayavi.__version__
4.4.0
from mayavi import mlab
j = np.copy('some 2d-array') # where j is shape (680, 680) and contains Nans
mlab.surf(j)
如果我和最小值取代的NaN,情节看起来不错,但周围的边缘人造飞机,我想剪短
j[np.isnan(j)]=j[~np.isnan(j)].min()
mlab.surf(j) # where j has been set to j.min() where j==np.nan
如果我然后添加一个掩码,对应于j==j.min()
的区域,我又得到了奇怪的输出(我也尝试了这个crea婷直接在阵列上的面具之前重新定义的NaN):
m = np.ma.masked_where(j==j.min(), j).mask
mlab.surf(j, mask=m)
感谢您抽出宝贵的时间来回答这个老问题。如果我有机会,我会试试这个。 – Jason