skillfed

hvplot

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

hvplot v0.12.2 1.4M downloads/30d#3,937 on PyPI1,356
Permissive license BSD Active released

What it is and what it does

hvPlot is a high-level visualization library that sits on top of HoloViews and plotting backends like Bokeh, Matplotlib, and Plotly. It exposes a familiar `.hvplot()` API modeled after Pandas' `.plot()` method, so if you know how to plot with Pandas, you can immediately use hvPlot to create interactive visualizations. It works with multiple data sources—Pandas DataFrames, Polars, XArray, Dask, and others—and lets you switch between rendering backends without changing your code.

The library is designed for three main workflows: exploratory data analysis (interactive plots in notebooks), reporting (static or embedded visualizations), and building data apps (combining plots with interactive widgets via Panel). It abstracts away much of the complexity of configuring HoloViews and Bokeh directly, making interactive visualization accessible to developers who want a simple, Pandas-like interface.

Use it for:

  • Exploratory data analysis in Jupyter notebooks with interactive hover tooltips and zoom/pan controls.
  • Building interactive dashboards and data apps by combining hvplot with Panel widgets for filtering and parameter control.
  • Creating publication-ready plots that can be exported to static images or embedded in web applications.
  • Visualizing time-series data from Pandas DataFrames or XArray datasets with linked axes and cross-filtering.
  • Rapid prototyping of multi-backend visualizations (Bokeh, Matplotlib, Plotly) without rewriting plot code.

Worth the install?

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

hvPlot provides a high-level plotting API that wraps HoloViews, Bokeh, and other visualization backends, letting you create interactive plots from Pandas, Polars, XArray, Dask, and other data sources using a familiar `.plot()` syntax.

Yes. hvPlot is actively maintained, has no known vulnerabilities, and offers low install friction. It's well-suited if you want interactive plots without learning HoloViews or Bokeh directly. Choose it if you're already comfortable with Pandas' `.plot()` API and want to upgrade to interactivity; skip it if you need fine-grained control over plot styling or are committed to a single backend like pure Matplotlib.

Install

hvplot on PyPI

pip

pip install hvplot

uv

uv add hvplot

poetry

poetry add hvplot

Installing hvplot

Before you install

Low install friction with a pure-Python wheel. Depends on eight runtime packages including holoviews, bokeh, pandas, and numpy—all stable, widely-used libraries. Actively maintained with recent commits and no known vulnerabilities.

License in practice

BSD license is permissive; you can use, modify, and distribute hvplot freely in commercial and open-source projects with minimal restrictions.

Quickstart

pip install hvplot

import pandas as pd
import hvplot.pandas

df = pd.DataFrame({'x': [1, 2, 3], 'y': [4, 5, 6]})
df.hvplot(kind='scatter', x='x', y='y')

Requires Python 3.10 or later. Bokeh (or Matplotlib/Plotly) must be installed for rendering; hvplot does not include a default backend.

Verify before relying

  • Whether the package supports all advertised data sources (Polars, Streamz, Intake, GeoPandas, NetworkX) equally well or if some have limited integration.
  • Performance characteristics when working with very large datasets or high-frequency interactive updates.
  • Extent of customization available beyond the high-level API for advanced use cases.

Package facts

License BSD (permissive)
Python support supports the current Python release (>=3.10)
Install friction low — pure-Python wheel
Runtime dependencies 8 — bokeh, colorcet, holoviews, numpy, packaging, pandas, panel, param
Maintenance actively maintained — 239 days since the last release
Last repo commit
First released
Downloads 1,412,041/month — #3,937 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: hvplot-0.12.2-py3-none-any.whl

Development Status :: 5 - Production/StableIntended Audience :: DevelopersIntended Audience :: Science/ResearchLicense :: OSI Approved :: BSD LicenseNatural 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

pandas plot api wrapperinteractive data visualizationholoviews plotting interfacebokeh matplotlib plotly backendexploratory data analysis plots
data-visualizationinteractive-plotsholoviz-ecosystem

More Libraries packages