
Hi!
This is more a design than a specific code question (and generating the MRE from 1k+ lines of the working version is pretty tough atm).
Currently using 2.4.3 with filter lists in the CDS Views, and coding for mode= ‘inline’ usage. There isn’t the capability to run Bokeh server in the target environment.
I implemented a CDS of data rows that are boolean filtered via a slider chosen relative time value and subselected by a CheckboxButtonGroup to a source domain (string). Each CustomJS block modifies their respective booleanFilter indices in the CDSView.filters[i].booleans arrays to limit the view to the time/source as selected by user.
This works well (on 2.4.3).
I’m trying to further make different glyphs for each data row dependent on a new parameter in the underlying DataFrame. For simplicity, I’ll just call the row ‘shape’.
I’m struggling to figure out how I can use a column of the CDS to filter the data items into a view for each desired glyph renderer without breaking the JS controls over the time/domain selections.
What I’d like to do is take a second CDSView (that filters ‘shape’) of the existing CDSView filtered by time/domain to further split these to the renderers. Since this isn’t possible (as far as I have played with and read):
- Any general ideas on the best way to structure this sort of stacked filtering job?
- With 3.0+'s single filter setup on CDS Views is there a general approach to updating a CDSView filter from CustomJS blocks that would give me the ability to control time/domain filtering for all three views, and have them filter for ‘shape?’
Thanks–and appreciate any gentle nudges in the right direction!
S

