Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/297.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Matplotlib draw()方法不使用';我什么也不做_Python_Matplotlib - Fatal编程技术网

Python Matplotlib draw()方法不使用';我什么也不做

Python Matplotlib draw()方法不使用';我什么也不做,python,matplotlib,Python,Matplotlib,我想使用matplotlib中的draw()方法动态更新绘图。我试着简单地使用 import matplotlib.pyplot as plt import time plt.plot(range(10)) plt.draw() 但这实际上没有任何作用。程序执行后关闭,但从未显示绘图。我运行了下面的程序,希望show方法能够生成一个带有后端的绘图窗口,然后进行更新,但我得到的结果是后端使用第一个show命令绘制绘图,并且随后再也不会更新。我认为show()方法正在挂起会话,直到窗口关闭 im

我想使用matplotlib中的draw()方法动态更新绘图。我试着简单地使用

import matplotlib.pyplot as plt
import time

plt.plot(range(10))
plt.draw()
但这实际上没有任何作用。程序执行后关闭,但从未显示绘图。我运行了下面的程序,希望show方法能够生成一个带有后端的绘图窗口,然后进行更新,但我得到的结果是后端使用第一个show命令绘制绘图,并且随后再也不会更新。我认为show()方法正在挂起会话,直到窗口关闭

import matplotlib.pyplot as plt
import time

plt.plot(range(10))
plt.show()
time.sleep(1)
plt.plot(range(50))
plt.draw()
我正在运行最新版本的Mac OS X(截至2014年7月15日)。好吧,那没用。接下来,我尝试使用一个不同于默认的后端('tkagg')。我还启用了matplotlib的交互模式(ion()

接下来,我想可能不再需要show()和draw()方法,所以我删除了它们。当我这样做时,程序执行并关闭,而不显示窗口

如果draw()方法不修改画布,如何动态更新绘图。当我从命令行使用pythong解释器时,这种交互模式的东西可以工作,但是只要我执行一个带有“python myfile.py”的文件,它就不会发生。我已经下载并尝试了一百万个例子,但没有一个能真正更新我电脑上的情节……帮助

import matplotlib.pyplot as plt

plt.plot(range(10))
plt.show()
plt.plot(range(50))
plt.show()
以上对我来说很有用。您需要关闭第一个打印窗口才能获得第二个打印窗口。这是因为
plt.show()
是一个阻塞函数。它会阻止程序,直到您真正关闭窗口

如果您希望在同一窗口中绘制。然后使用matplotlib中的交互模式

import matplotlib.pyplot as plt
import time

plt.ion()
plt.plot(range(10))
plt.draw()
time.sleep(20)
plt.plot(range(50))
plt.draw()
time.sleep(20) 

这确实有效,但在我的计算机上,它不会打开前景中的绘图窗口。所以,在OSX中执行向上滑动动作以找到窗口。

当然可以,但这不是我的问题。我说的是在适当的地方更新情节。抱歉搞混了。我刚刚更新了这个问题的答案。看看是否有效。你的第二个回答对我也不起作用。看起来你是在响应中复制/粘贴我的代码而不做任何更改。当我运行相同的代码时,我的mac上没有绘图窗口。完全代码暂停41.4秒,最后在不创建可见绘图窗口的情况下完成执行。Wierd。它可以在我的OSX 10.9、matplotlib 1.1.1和python 2.7上运行。出于好奇,请尝试一下支持的
MacOSX
。@Ben我试了一下。该后端也不允许窗口打印…您能够从
ipython
以交互方式打印吗?
import matplotlib.pyplot as plt
import time

plt.ion()
plt.plot(range(10))
plt.draw()
time.sleep(20)
plt.plot(range(50))
plt.draw()
time.sleep(20)