skillfed

holoviews

A high-level plotting API for the PyData ecosystem built on HoloViews.

holoviews v1.23.1 2.1M downloads/30d#3,290 on PyPI2,902
Permissive license BSD-3-Clause Active released

What it is and what it does

HoloViews is a declarative visualization library that shifts the mental model from 'how do I plot this' to 'what data structure am I working with and what should it show'. You annotate your data with dimension names and types, then HoloViews handles rendering to interactive plots via bokeh or other backends. It sits atop a stack of dependencies including bokeh for interactivity, pandas and numpy for data handling, and panel for dashboard integration.

The library is designed for exploratory data analysis in Jupyter environments, where you want to iterate quickly without writing boilerplate plotting code. It supports composing multiple plots, overlaying data, and linking interactions across visualizations. With 9 runtime dependencies and low install friction, it integrates cleanly into existing PyData workflows.

Use it for:

  • Exploratory data analysis in Jupyter notebooks where you need interactive plots without verbose code
  • Composing multi-panel dashboards with linked selections and interactions using panel
  • Rapid prototyping of scientific visualizations where data structure and plot type are closely coupled
  • Building interactive web applications that render data-driven plots with bokeh as the backend

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

HoloViews lets you declare data structure and visualization intent together, then render interactive plots through bokeh or other backends without writing explicit plotting code.

Yes. HoloViews is actively maintained, has no known vulnerabilities, and solves a real friction point in exploratory data analysis. The permissive BSD-3-Clause license and low install friction make it a straightforward addition to a Jupyter-based workflow. Install it if you work with structured data in notebooks and want to reduce boilerplate plotting code.

Install

holoviews on PyPI

pip

pip install holoviews

uv

uv add holoviews

poetry

poetry add holoviews

Installing holoviews

Before you install

Low install friction; pure Python wheel with 9 runtime dependencies including bokeh, pandas, and numpy. Active maintenance with a release 43 days ago and ongoing commits.

License in practice

BSD-3-Clause permissive license allows commercial and private use with minimal restrictions.

Quickstart

pip install holoviews

import holoviews as hv

hv.extension('bokeh')
data = {'x': [1, 2, 3], 'y': [1, 2, 3]}
plot = hv.Scatter(data, 'x', 'y')
plot.show()

Requires Python 3.10 or later; bokeh must be installed for interactive rendering.

Verify before relying

  • Whether narwhals integration enables lazy evaluation or dataframe abstraction across multiple backends
  • Performance characteristics with large datasets and rendering latency

Package facts

License BSD-3-Clause (permissive)
Python support supports the current Python release (>=3.10)
Install friction low — pure-Python wheel
Runtime dependencies 9 — bokeh, colorcet, narwhals, numpy, pandas, panel, param, python-dateutil, pyviz-comms
Maintenance actively maintained — 43 days since the last release
Last repo commit
First released
Downloads 2,109,199/month — #3,290 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: holoviews-1.23.1-py3-none-any.whl

Development Status :: 5 - Production/StableFramework :: MatplotlibIntended Audience :: DevelopersIntended Audience :: Science/ResearchNatural Language :: EnglishOperating System :: OS IndependentProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Topic :: Scientific/EngineeringTopic :: Software Development :: Libraries

Tags

declarative data visualizationinteractive plotting for jupyterbokeh visualization wrapperdata annotation and renderinghigh-level plotting API
jupyter-nativeinteractive-visualizationdata-exploration

More Libraries packages