2017-09-04 91 views
0

我在同一張圖3個地塊單提示(背景虛化0.12.7)背景虛化:多個地塊

我想表明與3個的圖形的所有數據的彙總單提示,像這樣:

single tooltip with summary

但我得到2/3重疊(和相同的)提示,只要鼠標指針太靠近多條曲線,像在這種情況下:

enter image description here

它可以限制工具提示到一個情節,但是這意味着什麼都不會發生,如果將鼠標指針觸及其他兩個:在下面的代碼我用參數names在HoverTool的提示適用於第一個情節的惟一。

有沒有辦法有一個反應的所有情節單一hovertool?

COMMON_PARAM = dict(x="date_time", source=self.data_source, line_alpha=GRAPH_LINE_ALPHA, line_width=GRAPH_LINE_WIDTH) 

line1 = self.figure.line(y=f1, 
         line_color=GRAPH_LINE_1_COLOR,             
         name="line_with_hovertool", 
         **COMMON_PARAM) 

line2 = self.figure.line(y=f2, 
         line_color=GRAPH_LINE_2_COLOR, 
         **COMMON_PARAM) 

line3 = self.figure.line(y=f3), 
         line_color=GRAPH_LINE_3_COLOR, 
         **COMMON_PARAM) 

hover = HoverTool(
    names=["line_with_hovertool"], # applies only to line1 
    tooltips= 
    """ 
    .... 
    """) 

self.figure.add_tools(hover) 

回答

0

可能的解決辦法是將懸停模式更改爲「vline」。這意味着當用戶在繪圖窗口的任何地方將鼠標從左到右移動時,鼠標懸停就會出現。然後,您可以將懸停工具提示限制在字形上,就像您已經完成的那樣。

顯然,如果這是不可取的,我不知道是否有是當前一個更好的辦法,所以它可能只是在短期內/工作,直到被解決。

V線可以在「mode」屬性設置爲每背景虛化的文檔時先初始化hovertool。 http://bokeh.pydata.org/en/latest/docs/reference/models/tools.html#bokeh.models.tools.HoverTool.mode

+0

謝謝你,@Anthonydouc。 我已經嘗試過,但看到即使** vline **所有3個工具提示一起出現。正如你所說,我可以使用**名稱**將工具提示鏈接到單一行,但隨着它消失(我可以隱藏一條線,使其他行可見),工具提示消失了。 但是,你給了我一個想法:我會在圖形(與相同顏色的背景,沒有傳說)的中間增加一個額外的「幾乎看不見」的情節與不斷Y,並將該工具提示鏈接到這個只。 我也將解決在移動鼠標時如何瘋狂地上下移動工具提示的問題。 –

+0

是的,不幸的是它不是一個乾淨的解決方案。我認爲另一種方法是根據線條的可見性隱藏和顯示懸停工具提示,如果這會導致任何問題,但我有很多問題。 http://www.aither.com.au/water-markets/aither-southern-mdb-entitlement-index1/示例在這裏(使用散景) – Anthonydouc