VSCode编辑python代码时使用matplotlib绘图plt.show()阻塞代码运行
程序员文章站
2024-01-19 14:46:28
...
在使用VSCode写python代码绘图时发现,每次运行到plt.show时代码就不向下运行了,如果想要显示多张图片的话就必须关掉这一张才能显示下一张。但好像PyCharm就可以同时显示出来。
在网上看到一些解决方法,比如下文讲了通过plt.ion来将代码从阻塞模式转换为交互模式。
matplotlib 画动态图以及plt.ion()和plt.ioff()的使用
这里面涉及到plt.ion、plt.imshow、plt.ioff等函数的用法,但自己并不是很会。
后来发现其实解决问题非常简单,只要不在每次绘图后都show,而只在代码最后show就可以了,这样就显示了所有图片。
import math
import matplotlib.pyplot as plt
import numpy as np
nbSamples = 256
x = np.linspace(-math.pi,math.pi,num=10)
y = np.sin(x)
z = np.cos(x)
plt.figure(1)
plt.plot(x,y)
# plt.show() #这一行注释掉就能同时显示两张图,不注释掉就只能关掉一张再显示下一张
plt.figure(2)
plt.plot(x,z)
plt.show()