Difference between plt.draw() and plt.show() in matplotlib

后端 未结 1 1445
盖世英雄少女心
盖世英雄少女心 2020-12-23 16:21

I was wondering why some people put a plt.draw() into their code before the plt.show(). For my code, the behavior of the plt.draw() di

相关标签:
1条回答
  • 2020-12-23 17:14

    plt.show() will display the current figure that you are working on.

    plt.draw() will re-draw the figure. This allows you to work in interactive mode and, should you have changed your data or formatting, allow the graph itself to change.

    The plt.draw docs state:

    This is used in interactive mode to update a figure that has been altered using one or more plot object method calls; it is not needed if figure modification is done entirely with pyplot functions, if a sequence of modifications ends with a pyplot function, or if matplotlib is in non-interactive mode and the sequence of modifications ends with show() or savefig().

    This seems to suggest that using plt.draw() before plt.show() when not in interactive mode will be redundant the vast majority of the time. The only time you may need it is if you are doing some very strange modifications that don't involve using pyplot functions.

    Refer to the Matplotlib FAQ, "What is interactive mode?" for more information.

    0 讨论(0)
提交回复
热议问题