This is a follow on to replace #4213. Rather than trying to automagically resize and place the existing on-canvas legend, I propose to create a new supplemental DOM-based legend that can be placed in a layout or template, separate from the plot canvas. This legend would render a div for each legend item, that each contains a canvas (to render the legend representative) and a span (for the legend label). By default these would be styled to display in a vertical columnar arrangement, but users should be able to target the CSS to obtain different responsive arrangements (e.g. horizontal, multiple rows, etc).
cc @bokeh/dev
Additional "nice-to-have"s that should be possible with a DOM-based legend:
This would be a very nice feature.
+1 For this!
(Old Request #10149 )
Most helpful comment
Additional "nice-to-have"s that should be possible with a DOM-based legend: