Matplotlib 如何设置关键字;块;在plt.show()中,默认情况下是否等于True?

Matplotlib 如何设置关键字;块;在plt.show()中,默认情况下是否等于True?,matplotlib,Matplotlib,出于某种原因,我需要显式地将关键字“block”设置为True,以便在从bashshell运行脚本时显示绘图。(当我从ipython shell运行它时,我不需要它)。几乎每个人都有这个论点,我怎么能在默认情况下把它设为True呢 样本: import matplotlib.pyplot as plt plt.plot([1,2,3], [1,2,3]) plt.show(block=True) 即使该参数未显式设置为True,我也希望显示绘图,即: import matplotlib.

出于某种原因,我需要显式地将关键字“block”设置为True,以便在从bashshell运行脚本时显示绘图。(当我从ipython shell运行它时,我不需要它)。几乎每个人都有这个论点,我怎么能在默认情况下把它设为True呢

样本:

import matplotlib.pyplot as plt

plt.plot([1,2,3], [1,2,3])

plt.show(block=True) 
即使该参数未显式设置为True,我也希望显示绘图,即:

import matplotlib.pyplot as plt

plt.plot([1,2,3], [1,2,3])

plt.show() 
我的matplotlibrc包含:

后端:MacOSX

互动:真的

工具栏:工具栏2

时区:UTC

mpl的“交互”模式决定了
plt.show的行为。如果处于“交互”模式,则假定有其他东西在管理GUI事件循环。在使用

python -i script.py
将把您放入一个交互式shell中。当位于REPL中时,python REPL循环和GUI事件循环之间进行了集成,这允许GUI循环在后台运行,这使得图形“交互式”。如果在这种情况下“交互”模式未打开,则在关闭图形之前,您不会得到提示

“交互”模式可以通过调用
plt.ion()
或通过在
matplotlibrc
中设置
'interactive'
键来启用


我强烈建议您将rcparam值保留为
False

默认的阻塞行为由是否调用了
plt.ion()
设置。另外,您是否更改了rcparams文件中的
交互式
键?谢谢,@tcaswell您能详细说明一下吗?我还没有打电话给plt.ion()。我的问题里有我的全部代码。我想我下载了一个在某处找到的rcparams文件。我将尝试查找该文件,并让您知道我已使用matplotlibrc文件中包含的一些信息编辑了答案。Interactive设置为True。这意味着什么?删除交互式条目(或将其设置为false),它将按预期工作