编辑
不幸的是,目前这是不可能的.我发现这是Spyder的一个错误.开发人员仍在研究如何处理这个问题.
在调试代码时可视化数据(我也想使用Spyder!).
使用以下代码创建名为foo.py的文件:
from ipdb import set_trace as st
import matplotlib.pyplot as plt
def bar():
st()
Run Code Online (Sandbox Code Playgroud)在IPython中,键入以下内容:
In [4]: import foo
In [5]: foo.bar()
--Return--
None
> somewhere_over_the_rainbow\foo.py(5)bar()
3
4 def bar():
----> 5 st()
ipdb> plt.plot([1, 2], [3, 4])
[<matplotlib.lines.Line2D object at 0x05CA8E90>]
ipdb> plt.show()
Run Code Online (Sandbox Code Playgroud)情节仍处于"冻结"状态.如果我退出调试器,则绘制更新.如果我试图关闭情节,IPython会崩溃.显然两者都不受欢迎,也不让我在调试时看到数据.
从命令行打开IPython:
In [4]: import foo
In [5]: foo.bar()
--Return--
None
> somewhere_over_the_rainbow\foo.py(5)bar()
3
4 def bar():
----> 5 st()
ipdb> plt.plot([1, 2], …Run Code Online (Sandbox Code Playgroud)