Python 在Mayavi设置Nan颜色

Python 在Mayavi设置Nan颜色,python,matplotlib,mayavi,colormap,mayavi.mlab,Python,Matplotlib,Mayavi,Colormap,Mayavi.mlab,我有很多数据,用单独的函数插值,其中包含间隙(NaN)值。我想使用imshow()在MayaVi中将这些数据平面绘制为图像,我已经成功地完成了这项工作 为了避免数据的复杂性,考虑显示数组: import numpy as np from mayavi.mlab import * grid_z0 = np.array([[1,2,3],[4,np.nan,6],[7,8,9]]) imshow(grid_z0, interpolate = False) 无透明度的快照: 实际上,我希望我的数据

我有很多数据,用单独的函数插值,其中包含间隙(NaN)值。我想使用imshow()在MayaVi中将这些数据平面绘制为图像,我已经成功地完成了这项工作

<>为了避免数据的复杂性,考虑显示数组:

import numpy as np
from mayavi.mlab import *
grid_z0 = np.array([[1,2,3],[4,np.nan,6],[7,8,9]])
imshow(grid_z0, interpolate = False)
无透明度的快照:

实际上,我希望我的数据中的差距是透明的。(即中间的暗红色128、0、0平方将是透明的)。

我知道在MayaVi中编辑颜色贴图并不是一件真正的事情(就像在matplotlib中一样),但我可以在MayaVi管道中看到“NaN颜色”选项,像这样的文档表明编辑颜色选项是可能的


但是,我一直想知道为什么NaN值会显示为(128,0,0)RGB,以及我能做些什么使它们透明。

更多思考、阅读和摆弄:

img = imshow(grid_z0)
img.module_manager.scalar_lut_manager.lut.nan_color = 0, 0, 0, 0
img.update_pipeline()