10分钟
交互式模式
- 使用交互式
backend可以plotting to the screen,但是前提是matplotlib必须是interactive mode。 你可以在matplotlibrc配置文件中设置matplotlib是否位于交互模式,也可以通过代码matplotlib.interacite()来设置matplotlib位于交互模式。你可以通过代码matplotlib.is_interactive()来判断代码是否交互模式。通常并不建议在绘图过程中修改交互模式,因此要提前修改交互模式再绘图。 交互模式也可以通过matplotlib.pyplot.ion()开启交互模式,由matplotlib.pyplot.ioff()关闭交互模式。另外交互模式支持ipython和python shell,但是不支持IDLE IDE。
2. 在交互模式下:
pyplot.plot()绘图之后图表马上显示,pyplot自动绘制到屏幕,不需要调用pyplot.show()- 图表显式之后你可以继续输入命令。任何对图形的修改会实时的反应到图表中去。
- 使用面向对象的方法,如
Axes的方法并不会自动调用draw_if_interactive()。如果你通过Axes来修改图表,想更新图表的话那么你需要手动调用.draw()方法。而pyplot模块中的函数会主动调用draw_if_interactive(),因此如果你是通过pyplot模块修改图表那么不需要手动调用.draw()方法就是实时绘制。
3. 在非交互模式下:
- 在绘图之后必须手动调用
pyplot.show()才能显示图表。该函数会阻塞执行直到你关闭了图表窗口。 - 所有的绘制工作会延迟到
pyplot.show()函数调用 - 在1.0版本以前,单个脚本文件中只能调用一次
pyplot.show(),在1.01版本之后该限制被放松。
学员评价