panel-holoviews

Installation
SKILL.md

Panel + HoloViews Integration Patterns

  • DO let Panel control the renderer theme
    • DON'T set hv.renderer('bokeh').theme = 'dark_minimal'

DynamicMap: Preserve Zoom/Pan Across Data Refreshes

When you set pane.object = new_plot, Bokeh resets all axes ranges. Wrap the plot function in hv.DynamicMap so Bokeh updates data in the existing figure rather than replacing it.

DON'T: Replace chart object directly

# BAD — zoom resets every refresh
self._chart_pane.object = df.hvplot.scatter(...)

DO: Use DynamicMap with a trigger parameter

Related skills

More from marcskovmadsen/holoviz-mcp

Installs
6
GitHub Stars
33
First Seen
Mar 1, 2026