Я пытаюсь настроить интерактивный фильтр экспрессии генов на графике временных рядов. Документированный метод создания этого вида фильтра связан с select_single
с формой ввода. Для меньшего числа вариантов, binding_select
будет работать. Например,
import altair as alt
group_dropdown = alt.binding_select(options=gene_names)
group_select = alt.selection_single(fields=['gene'], bind=group_dropdown, name='Feature', init={'gene': gene_names[0]})
filter_group = chart.add_selection(group_select).transform_filter(group_select)
Однако у меня есть ~ 50 тыс. Генов, которые можно выбрать, поэтому выпадающий список (binding_select
) на самом деле не подходит. Элемент <datalist>
был бы идеальным. Документы vega-lite по Input Binding подразумевают, что I должен быть в состоянии использовать любой элемент ввода HTML формы, но я не могу понять, какой класс Altair сопоставился бы с что.