You need to add matplotlib.pyplot.show() in your code to show plots in non-interactive mode. See docs at http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.show
EDIT:
After further info from OP, blocking had to be enabled explicitly using plt.show(block=True).