Python Bokeh,选择用于打印的交互式多个数据集

Python Bokeh,选择用于打印的交互式多个数据集,python,plot,bokeh,Python,Plot,Bokeh,我对使用Bokeh是新手 我有数据大致上是这样的 date names numbers 2016 var1 62 2012 var2 82 2014 var1 118 2015 var2 69852 2012 var3 167 2016 var1 2266 2011 var1 88282 2015 var3 6307 ... 我使用Bokeh脚本来绘制数据,并从下拉菜单中选择要绘制数据的名称(var1,var2,…) 脚本基于以下示例:

我对使用Bokeh是新手

我有数据大致上是这样的

date    names   numbers
2016    var1 62
2012    var2 82
2014    var1 118
2015    var2 69852
2012    var3 167
2016    var1 2266
2011    var1 88282
2015    var3 6307
...
我使用Bokeh脚本来绘制数据,并从下拉菜单中选择要绘制数据的名称(var1,var2,…)

脚本基于以下示例:如下所示

import pandas as pd
from bokeh.io import curdoc
from bokeh.layouts import row, column
from bokeh.models import ColumnDataSource, Select
from bokeh.plotting import figure


def get_dataset(src, name):
    df = src[src.names == name].copy()
    del df['names']
    df = df.set_index(['date'])
    df.sort_index(inplace=True)
    return ColumnDataSource(data=df)


def make_plot(source, title):
    plot = figure(plot_width=800, tools="", toolbar_location=None)
    plot.title.text = title
    plot.line(x='date', y='numbers', source=source, legend="Record")
    return plot


def update_plot(attrname, old, new):
    ver = vselect.value
    plot.title.text = "xxx"
    src = get_dataset(df, ver)
    source.date.update(src.date)


df = pd.read_csv('data/test_data.csv', delimiter='\t')
ver = 'aps'

cc = df['names'].unique()

vselect = Select(value=ver, title='VER', options=sorted((cc)))

source = get_dataset(df, ver)
plot = make_plot(source, "xxx")

vselect.on_change('value', update_plot)
controls = column(vselect)

curdoc().add_root(row(plot, controls))
这很好,但我想现在允许选择多个名称(例如var1和var2),以便在同一个绘图中绘制它们,以便于比较。
然而,我不知道该怎么做

(可能)清理通道47434701。看起来Bokeh有一种方法在这种情况下可能很有用。我想在最初提出问题的时候它是不可用的

(可能)清理通道47434701。看起来Bokeh有一种方法在这种情况下可能很有用。我想在最初提出问题的时候它是不可用的

使用交互式图例触发可见性时,可以从一开始就更改方法并绘制所有内容。使用交互式图例触发可见性时,可以从一开始就更改方法并绘制所有内容。