用于绘图的窗口出现但没有出现,我得到这个 ValueError:x 和 y 必须具有相同的第一维
import psutil
import matplotlib.pyplot as plt
import matplotlib.animation as animation
a = [i for i in range(1000)]
ram_avaliable = []
fig, ax = plt.subplots()
def update(n):
ram = psutil.virtual_memory()
ram_avaliable.append(float(ram[1])/1073741824)
print (a[n],ram_avaliable[n])
ax.plot(a[n],ram_avaliable[n])
ani = animation.FuncAnimation(fig,update,interval=100)
plt.show()
最佳答案
您发布的代码对我来说运行没有错误。为了显示点,我必须做的唯一更改是向 plot
命令添加标记样式。
这是因为当您调用 plot
时,您正在绘制一条新线。它之前没有出现的原因是因为默认的线型是用线连接点——因为每条绘制的线只有一个点,所以没有什么可以连接的。将标记样式更改为显示点的样式可以解决此问题,例如
ax.plot(a[n],ram_avaliable[n], 'ro')
将点绘制成红色圆圈。
关于python - Matplotlib python 动画不显示线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39579419/