F L*_*F L 7 python numpy matplotlib nan colorbar
我正在尝试将颜色绘制成一些数组,并将一些值转换为np.nan(以便于解释)并在绘制时期望不同的颜色(白色?),而不是它会导致绘图和颜色条出现问题.
#this is before converted to nan
array = np.random.rand(4,10)
plt.pcolor(array)
plt.colorbar(orientation='horizontal')
Run Code Online (Sandbox Code Playgroud)
#conditional value converted to nan
array = np.random.rand(4,10)
array[array<0.5]=np.nan
plt.pcolor(array)
plt.colorbar(orientation='horizontal')
Run Code Online (Sandbox Code Playgroud)
有什么建议吗?
其中一个解决方案是绘制掩盖数组,如下所示:
import matplotlib.pylab as plt
import numpy as np
#conditional value converted to nan
array = np.random.rand(4,10)
array[array<0.5]=np.nan
m = np.ma.masked_where(np.isnan(array),array)
plt.pcolor(m)
plt.colorbar(orientation='horizontal')
plt.show()
Run Code Online (Sandbox Code Playgroud)