vscode Python交互中的matplotlib交互模式

时间:2019-06-13 01:42:27

标签: python matplotlib visual-studio-code

我正在尝试在vscode(Windows)的Python Interactive中以交互模式打开任何matplotlib图表

我尝试使用魔术

%matplotlib qt 

有时它可以工作,但是在很多情况下,它只是“闪烁”(打开图表窗口并立即关闭它,我不知道为什么),而是在Python Interactive中显示图表

我尝试了 plt.ion(),但似乎没有任何改变。

在交互模式下打开图表的正确方法是什么?

2 个答案:

答案 0 :(得分:1)

如果要在单独的窗口中显示图,则可能需要设置一个后端。另外,您选择的后端可能与您的设置不兼容,因此请尝试一些。

In [4]: plt.switch_backend('QtAgg4')

如果您要在线显示图,则无需执行任何操作。默认情况下,VS Code将内联显示绘图。您不需要内联%matplotlib或plt.show()。如果您确实希望内联绘图不起作用,请尝试:

get_ipython().run_line_magic('matplotlib', 'inline')

这是通过导入将jupyter笔记本转换为VS Code时显示的内容。

    import numpy as np
    import matplotlib.pyplot as plt

    x = np.arange(0,100)
    y = x*2

    # Functional Method
    fig = plt.figure()
    ax = fig.add_axes([0, 0, 1, 1])
    ax.plot(x, y)
    ax.set_title('title')
    ax.set_xlabel('X')
    ax.set_ylabel('Y')

My Code, tested on my VS Code in Interactive Window, with plot showing inline.

答案 1 :(得分:0)

我是“交互式窗口”上的开发人员。詹妮弗(Jennifer)已经在上面给出了一些不错的建议,以使弹出图与我们当前的版本一起工作。但是,如果您有兴趣,我们最近就在我们最新的开发版本中添加了一个绘图查看器。您可以在这里看到问题:

https://github.com/microsoft/vscode-python/issues/4976

要等到下个月的每月发行,我们才会发布完整版本。但是,如果您想尽早尝试并查看它是否适合您,可以在此处查看我们的开发版本:

https://github.com/microsoft/vscode-python/blob/master/CONTRIBUTING.md#development-build