pythonbokeh

How to configure bokeh plot to have responsive width and fixed height


I use bokeh embedded via the components function.

Acutally I use :

plot.sizing_mode = "scale_width"

Which scales according to the width and maintains the aspect ratio. But I would like to have a responsive width but a fixed or maximum height. How is that possible to achieve?


Solution

  • There are stretch_both and scale_both options.

    How the item being displayed should size itself. Possible values are "fixed", "scale_width", "scale_height", "scale_both", and "stretch_both".

    "stretch_both" elements are completely responsive (independently in width and height) and will resize to occupy all available space, even if this changes the aspect ratio of the element. This is sometimes called outside-in, and is a typical behavior for desktop applications.

    ...

    "scale_both" elements will responsively resize to for both the width and height available, while maintaining the original aspect ratio.

    https://docs.bokeh.org/en/latest/docs/user_guide/basic/layouts.html