Mapa de calor de escala de grises de Matplotlib con campos de cuadrados "NA" visualmente distintos

Estoy creando un mapa de calor para usar en una publicación. La publicación está restringida a la impresión en blanco y negro, así que estoy creando el mapa de calor en escala de grises. El problema que tengo es que hay algunos cuadrados en el mapa de calor que son "No Aplica" que quiero diferenciar visualmente de las otras celdas. Mi entendimiento es que esto puede (?) Ser posible utilizando matrices enmascaradas de numpy si el mapa de calor está coloreado en ambos extremos de la escala, y los campos enmascarados pueden simplemente mostrarse en blanco. El problema es que me gustaría usar el espectro completo de blanco a negro para ilustrar el rango de los datos que no son de NA. ¿Hay alguna forma de distinguir las células NA con algún otro mecanismo visual, como un tachado?

A continuación se muestra un ejemplo mínimo de escala de grises con una matriz enmascarada (adaptado deaquí). Los valores de NA probablemente estén enmascarados aquí, simplemente no se puede saber porque está usando blanco que ya se está utilizando como el color en el extremo superior del espectro válido.

import numpy as np
from pylab import *

z = rand(10, 25)
z = np.ma.masked_array(z,mask=z>0.8)

c = pcolor(z)
set_cmap('gray')
colorbar()
c = pcolor(z, edgecolors='w', linewidths=1)
axis([0,25,0,10])
savefig('plt.png')
show()

Respuestas a la pregunta(2)

Su respuesta a la pregunta