2016-07-29 43 views
0

我知道我可以打開和關閉散景與p1.xaxis.visible = Nonep1.yaxis.visible = NoneHide Axis in Bokeh。如果我有一個額外的y範圍,我想改變其可見度呢?我定義我的額外軸這樣的:散景:如何更改額外的軸可見度

plot.extra_y_ranges = {'ORP': Range1d(start=0, end=plot_d['y_axis2_max'])} 
plot.add_layout(LinearAxis(y_range_name='ORP', axis_label='ORP, mV'), 'left') 

我試圖plot.extra_y_ranges.visible = None,但它沒有任何效果,我是不是能夠找到的文檔中任何事情。我錯過了什麼嗎?

回答

1

您需要更改線的可見性,而不是軸。

我已經在Github上的一個項目中完成了這個項目,該項目顯示溫度和溼度數據(等等)。溼度數據是額外的y軸,我有複選框顯示/隱藏溫度和/或溼度。下面是顯示功能/隱藏圖表上的線:

def h_t_lines_changed(self, active): 
    """Helper function for h_t_tab - turns lines on and off""" 
    for index in range(len(self.h_t_line)): 
     self.h_t_line[index].visible = index in active 

這裏的行定義:

self.h_t_line[0] = self.h_t_fig.line(x='Timestamp', 
             y='Temperature (C)', 
             source=self.source, 
             color="blue", 
             legend="Temperature", 
             line_width=2) 

    self.h_t_line[1] = self.h_t_fig.line(x="Timestamp", 
             y="Relative humidity (%)", 
             source=self.source, 
             y_range_name="humidity", 
             color="green", 
             legend="Humidity", 
             line_width=2) 

和這裏的複選框代碼,包括回調:

resp_b = [0, 1] 
    h_t_check_head = Div(text="Responses") 
    h_t_check = CheckboxGroup(labels=["Temperature", "Humidity"], 
           active=resp_b, 
           name="Lines") 

    h_t_check.on_click(self.h_t_lines_changed) 

我現在正在更新我的項目。如果你想讓我發佈一個鏈接,請告訴我。

+0

謝謝邁克。這是超級有用的! –