相互作用図例

伝説 Bokeh描画に追加されたグラフィックは、インタラクティブであってもよいので、図面エントリをクリックまたはクリックすると、描画中の対応するフォントが隠されているか、またはミュートされる。これらのパターンは設定することで click_policy 属性上の Legend いずれにしても "hide" あるいは…。 "mute" それがそうです。

注釈

インタラクティブなインスタンスは“字形ごと”のインスタンスにのみ適用される.グループ化図の例では,以下に述べる機能はサポートされていない.

字形を隠す.

場合によっては,コントロール内のエントリをクリックすることでフォントを隠蔽することが望ましい. Legend それがそうです。Bokehでは,これは図の例を設定することで実現できる. click_policy 属性が "hide" 以下の例を示す.

import pandas as pd

from bokeh.palettes import Spectral4
from bokeh.plotting import figure, output_file, show
from bokeh.sampledata.stocks import AAPL, GOOG, IBM, MSFT

p = figure(plot_width=800, plot_height=250, x_axis_type="datetime")
p.title.text = 'Click on legend entries to hide the corresponding lines'

for data, name, color in zip([AAPL, IBM, MSFT, GOOG], ["AAPL", "IBM", "MSFT", "GOOG"], Spectral4):
    df = pd.DataFrame(data)
    df['date'] = pd.to_datetime(df['date'])
    p.line(df['date'], df['close'], line_width=2, color=color, alpha=0.8, legend_label=name)

p.legend.location = "top_left"
p.legend.click_policy="hide"

output_file("interactive_legend.html", title="interactive_legend.py example")

show(p)

無効字.

その他の場合,インスタンスインタラクションは,完全に隠蔽するのではなく,字形をミュートに設定することが望ましい.本例では、設定 click_policy 属性が "mute" それがそうです。また,“静音字形”の視覚属性を指定する必要がある.一般に,これは以下の方式とまったく同様の方法で行われる 選定された字形の選定と取り消し あるいは…。 ホバリング検査. それがそうです。以下の例では、 muted_alpha=0.2 そして muted_color=color 伝達することができます circle 低Alpha静音字形を使用してミュートラインを描画することを指定するには、以下の操作を実行してください。

import pandas as pd

from bokeh.palettes import Spectral4
from bokeh.plotting import figure, show
from bokeh.sampledata.stocks import AAPL, GOOG, IBM, MSFT

p = figure(plot_width=800, plot_height=250, x_axis_type="datetime")
p.title.text = 'Click on legend entries to mute the corresponding lines'

for data, name, color in zip([AAPL, IBM, MSFT, GOOG], ["AAPL", "IBM", "MSFT", "GOOG"], Spectral4):
    df = pd.DataFrame(data)
    df['date'] = pd.to_datetime(df['date'])
    p.line(df['date'], df['close'], line_width=2, color=color, alpha=0.8,
           muted_color=color, muted_alpha=0.2, legend_label=name)

p.legend.location = "top_left"
p.legend.click_policy="mute"

show(p)