Linked brushing selection behaviour

I would like some guidance on how to modify the linked brushing behaviour.

I’d like to be able to add to my current selection by holding down shift and selecting from any of the linked plots.

Currently, if I look at the example for linked brushing and take the following steps:

  1. make a selection in the left-hand plot.

  2. make a selection in the right-hand plot while pressing shift

The result is that my first selection is unselected and only the glyphs selected in the second selection remain selected. This is not what I had expected for linked plots sharing a datasource.

Is it possible to make this new selection append to the existing selection if the shift key is held down by adding some customJS? I don’t know any JS (yet) so would like some indication of whether this should be possible before I start digging into it. If not, is my expected behaviour something that would be considered if I had a go at implementing that as a feature? Guidance on the best approach to a solution, in either case, would be appreciated.

Thanks,

Chris

I did a little more searching and found this related open issue - Shift selection in linked brushing plots · Issue #5044 · bokeh/bokeh · GitHub

···

On Tuesday, 21 February 2017 20:34:06 UTC+10, [email protected] wrote:

I would like some guidance on how to modify the linked brushing behaviour.

I’d like to be able to add to my current selection by holding down shift and selecting from any of the linked plots.

Currently, if I look at the example for linked brushing and take the following steps:

  1. make a selection in the left-hand plot.
  1. make a selection in the right-hand plot while pressing shift

The result is that my first selection is unselected and only the glyphs selected in the second selection remain selected. This is not what I had expected for linked plots sharing a datasource.

Is it possible to make this new selection append to the existing selection if the shift key is held down by adding some customJS? I don’t know any JS (yet) so would like some indication of whether this should be possible before I start digging into it. If not, is my expected behaviour something that would be considered if I had a go at implementing that as a feature? Guidance on the best approach to a solution, in either case, would be appreciated.

Thanks,

Chris