2016-09-13 1 views
0

Я использую bokeh для проведения интерактивного анализа данных. Я использую отдельный профиль firefox для этой работы, чем для других браузеров, и я хотел бы иметь возможность открывать вкладку с этим другим идентификатором при запуске скрипта. Общая формаКак указать идентификатор firefox при вызове bokeh.show

from bokeh.client import push_session 
from bokeh.io import curdoc 
from bokeh.plotting import show 

[analysis setup] 

session = push_session(curdoc()) 
session.show(*args, **kwargs) 

На данный момент args и kwargs только информацию макета сетки. Запуск этого скрипта открывает вкладку в экземпляре firefox по умолчанию. Я могу открыть его с профилем firefox, который я хочу, запустив

$ firefox -P --no-remote ipython --new-tab http://localhost:5006/?bokeh-session-id=xIjdv4HI8MR1xTkWf8iR5fauYKHvp3wDc3Zre5fv444o 

из командной строки. Оттуда все работает отлично, но я бы хотел, чтобы bokeh открывал вкладку с новым профилем без дополнительного шага. Документация для session.show только говорит мне, что я могу указать вкладку или окно, но ничего больше.

+0

На данный момент вы не можете. В модуле bokeh есть проблема. Я работаю над патчем. –

ответ

1

Исправлена ​​ошибка в Bokeh 0.12.3. Вы можете настроить браузер, чтобы использовать как:

from bokeh.client import push_session 
from bokeh.io import curdoc 
from bokeh.plotting import figure, show 

# prepare some data 
x = [1, 2, 3, 4, 5] 
y = [6, 7, 2, 4, 5] 

# create a new plot with a title and axis labels 
p = figure(title='simple line example', x_axis_label='x', y_axis_label='y') 

# add a line renderer with legend and line thickness 
p.line(x, y, legend='Temp.', line_width=2) 

# HERE you define the custom browser 
# custom_firefox_bg = '/usr/bin/firefox -P ipython --new-tab %s &' 
custom_firefox = '/usr/bin/firefox -P ipython --new-tab %s' 

session = push_session(curdoc()) 
session.show(obj=p, browser=custom_firefox) 

%s будет заменить на URL. Если команда заканчивается &, браузер будет открыт в фоновом режиме, чтобы не блокировать ваш скрипт Python.