由于某些原因,我需要显式地将关键字"block"设置为True,以便在从bash shell运行脚本时显示绘图。(当我从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()
我的matplotlibc包含:
后端:MacOSX
交互式:真正的
工具栏:工具栏2
时区:UTC
mpl的"交互式"模式决定了plt.show
的行为。如果处于"交互式"模式,则假定有其他东西在管理GUI事件循环。使用运行脚本时
python -i script.py
将把您放入一个交互式shell中。当位于REPL中时,python REPL循环和GUI事件循环之间存在集成,这允许GUI循环在后台运行,这使得图形具有"交互式"。在这种情况下,如果"交互式"模式是而不是,则在关闭图形之前不会收到提示。
"交互式"模式可以通过调用plt.ion()
或在matplotlibrc
中设置'interactive'
键来启用。
我强烈建议您将rcparam值保留为False
。
kwargs = dict(type='candle',mav=(10),volume=True,figratio=(11,8),figscale=0.85, block=True)
mpf.plot(dfless, **kwargs, style='classic')
把它放在kwargs里对我来说效果很好