This worked for me for turning the figure to black and white:
After saving the figure in colors I write
for o in fig.findobj(matplotlib.lines.Line2D):
for o in fig.findobj(matplotlib.text.Text):
Than I save it as black and white.
It is beyond my programming skills, but I wish we could have a built in function of this type.