If instead of None
you use 0's for the transparent colors, you can take your favorite matplotlib colormap and add a transparent color at the beginning of it:
my_red_cmap = mplt.cm.Reds
my_red_cmap.set_under(color="white", alpha="0")
then you can just plot the array B
with a global alpha of 0.3 whatever you want, using your custom color map, which will use a transparent white as its first value.