2017-02-23 24 views
0

使用散景(0.12.4)時我發現了以下問題: 當我設置'Select'元素的寬度時,無法使用 顯示其全部內容散景會適應大小。散景小部件CSS

這往往會打破我腦海中的佈局(請注意,我不是很好 )。 我現在的「處理方法」是真正定義如下HTML模板:

<!DOCTYPE html> 
<html lang="en"> 
    <head> 
     <style> 
      @import url(https://fonts.googleapis.com/css?family=Noto+Sans); 
      body { 
       font-family: 'Noto Sans', sans-serif; 
       -webkit-font-smoothing: antialiased; 
       text-rendering: optimizeLegibility; 
       color: #fff; 
       background: #2F2F2F; 
      } 

      .selector select{ 
       width: 97%; 
       overflow: hidden; 
      } 
     </style> 
     <meta charset="utf-8"> 
     <title>Bokeh Crossfilter Example</title> 
     {{ bokeh_css }} 
     {{ bokeh_js }} 
    </head> 
    <body> 
     {{ plot_script|indent(8) }} 
     {{ plot_div|indent(8) }} 
    </body> 
</html> 

和硬編碼的CSS類(NB這是從背景虛化的例子改編)在 劇本,因爲很顯然,背景虛化不接受相同的設置,如果是通過 theme.yaml

# -*- coding: utf-8 -*- 
from bokeh.layouts import row 
from bokeh.models import Select 
from bokeh.plotting import curdoc, figure 

def plot_placeholder(): 
    p = figure(tools='pan,box_zoom,reset',responsive=True); 
    return p 

############################################ 
#options 
Data = ['Supercalifragilisticexpialidocious', 'dumb', 'example'] 
sel = Select(title='Option 1', value = 'None', options = ['None'] + Data, name='OptionSelector', css_classes=['selector']) 

############################################################################# 
layout = row([sel, plot_placeholder()], sizing_mode='fixed', width=400) 

curdoc().add_root(layout) 
curdoc().title = "Statistical Plots" 

這個工程提供的,但我想知道,是否可以用Python的唯一 實現這一點。 例如我想知道是否可以在沒有定義模板AND 的情況下強制所有選擇器的屬性。

此外,作爲這個問題的一個擴展,我怎麼能通過一個CSS文件到Bokeh而不借助模板。我試過CSSResources,但沒有得到任何地方,因爲雖然它會產生一個CSS文件列表,列表看起來不可變。

回答

1

關於你的最後一個問題,你可以有一個這樣的佈局: (爲了簡單起見,我只將styles.css放在與index.html相同的目錄下,但你可以把它放在static/css/styles .css如果你願意)。

<!DOCTYPE html> 
    <html lang="en"> 
     <head> 
      <meta charset="utf-8"> 
      <title> Title here </title> 
      {{ bokeh_css }} 
      {{ bokeh_js }} 
      <style>  
       {% include 'styles.css' %} 
      </style> 
+0

感謝您的信息。我的目標是一個Bokeh應用程序,它只需要極少量的Python以外的工作(最好不用)。 – Nox

+0

我會試着在python中設置這些值,並讓你知道我以後能否找到解決方案。 – Anthonydouc