Вы можете получить 2 раскрывающихся списка и выбрать любую комбинацию из 2 столбцов вашего набора данных, создав HoloMap или DynamicMap .
- Создание HoloMap : это график, где количество комбинаций графиков является фиксированным и создается заранее. Вот рабочий пример:
# import libraries
import numpy as np
import pandas as pd
import holoviews as hv
hv.extension('bokeh')
# create sample data
df = pd.DataFrame(
data=np.random.rand(50, 4),
columns=['col1', 'col2', 'col3', 'col4'],
)
df['time'] = np.arange(0., 0.5, step=0.01)
# loop over your column names twice to create all possible plots in your holomap
hv.HoloMap({
(col1, col2): hv.Scatter((df[col1], df[col2])) for col1 in df.columns for col2 in df.columns},
kdims=['x', 'y'],
)
- Другой способ - создание DynamicMap , в котором не создано количество комбинаций графиков. заранее, но создается на лету при изменении выпадающих списков:
# function that creates the dynamic plot when called by your dynamicmap
def plot_scatter(x, y):
return hv.Scatter((df[x], df[y]))
# create your dynamicmap
dmap = hv.DynamicMap(plot_scatter, kdims=['x', 'y'])
# define the range of values that your dropdowns should have
dmap.redim.values(x=df.columns, y=df.columns)
Результирующий сюжет: