具有初始隐藏/静音图例组的散景图

时间:2019-02-22 15:55:07

标签: python bokeh

基本上,我需要this,但是在加载图的地方,某些图例条目已被静音或隐藏,用户单击以显示它们。 enter image description here

我试图寻找Bokeh的文档,但是找不到我需要的设置。

1 个答案:

答案 0 :(得分:1)

此代码可以满足您的要求(在Bokeh v1.0.4上进行了测试)。您只需要在字形渲染器上设置visible属性。

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

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

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

lines["AAPL"].visible = False

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

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

结果:

enter image description here