
According to the docs, CDSView can take a list of filters:
view = CDSView(source=cds, filters=[IndexFilter([0]), IndexFilter([1])])
And view.filters shows the list of 2 filters being stored. However, it isn’t clear how this can be used when drawing glyphs:
p.circle(x=‘offset’, y=‘y’, source=cds, view=view)
This doesn’t throw any errors but nothing is plotted either. When the CDSView has only one filter:
view = CDSView(source=cds, filters=[IndexFilter([0]), IndexFilter([1])])
then the circle is drawn. What I’d like to do is draw circle(s) with all of the indices from the first filter and, say, square(s) with all of the indices found in the the second filter. Ultimately, I have a long list of views and I’d like to draw different shapes using different filters. I’d like to be able to do this programmatically rather than having to manually create 3 dozen views.

