Bokeh show()未在默认浏览器中打开

时间:2017-05-27 18:00:33

标签: python-3.x google-chrome bokeh spyder

直到一小时前,在运行我的程序时,有一个Bokeh show(plot)语句,用于在Chrome中显示的图是默认浏览器。但是,同样的程序和声明现在导致Firefox打开,而Firefox的一半时间不会显示任何情节。我在MacOS Sierra上使用Spyder 3.1.4。我在Chrome设置中进行了检查,结果显示Chrome是默认浏览器。我还检查了系统偏好设置中的常规设置,其中Chrome显示为默认浏览器。卸载Firefox然后运行程序会导致图表显示在Safari中(图表至少一直显示在那里)。有没有办法让这些情节在Chrome上显示?

2 个答案:

答案 0 :(得分:1)

Bokeh使用Python标准库webbrowser模块。如果它打开Chrome以外的东西,那就是因为Python本身已经确定Chrome不是默认浏览器(无论出于何种原因,我无法推测)。

但是,如果您refer to the documentation,则可以看到show接受browser参数:

show(browser="chrome")

这将允许您指定任何您喜欢的浏览器,而不是使用Python默认的任何浏览器。

或者,有一个environment variable you can set

BOKEH_BROWSER="chrome" python foo.py

答案 1 :(得分:1)

最新版本的MacOS'存在一个错误。 osascript应用程序导致webbrowser中的错误。

你可以在这里看到有关它的喋喋不休: https://bugs.python.org/issue30392