Сюжет боке с изначально скрытыми / приглушенными группами легенд - PullRequest
0 голосов
/ 22 февраля 2019

По сути, я хочу это , но где, когда график загружается, некоторые записи легенды уже отключены или скрыты, и пользователь нажимает, чтобы показать их.enter image description here

Я пытался охотиться вокруг документов Боке, но не могу найти нужную настройку.

1 Ответ

0 голосов
/ 29 марта 2019

Этот код делает то, что вы хотите (проверено на 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

...