HoloViz Logo#

High-level tools to simplify visualization in Python

Welcome to HoloViz! HoloViz is a coordinated effort to make browser-based data visualization in Python easier to use, easier to learn, and more powerful.

HoloViz provides:

  • High-level tools that make it easier to apply Python plotting libraries to your data.

  • A comprehensive tutorial showing how to use the available tools together to do a wide range of different tasks.

  • Sample datasets to work with.

HoloViz-maintained libraries#

HoloViz provides a set of Python packages that make visualization easier, more accurate, and more powerful:

  • Panel: for making apps and dashboards for your plots from any supported plotting library.

  • hvPlot: to quickly generate interactive plots from your data.

  • HoloViews: to help you make all of your data instantly visualizable.

  • GeoViews: to extend HoloViews for geographic data.

  • Datashader: for rendering even the largest datasets.

  • Lumen: to build data-driven dashboards from a simple YAML specification that’s well suited to modern AI tools like LLMs.

  • Param: to create declarative user-configurable objects.

  • Colorcet: for perceptually uniform colormaps.

Not sure where to start? Try hvPlot for quick and easy one-line plots of your Pandas, Xarray, Dask, and other data types. Or check out Panel if you already have visualizations you want to turn into apps or shareable dashboards. Or just work your way through the tutorial to see all the things you can do!

Building on the SciPy/PyData ecosystem#

HoloViz tools build on the many excellent visualization tools available in the scientific Python ecosystem, allowing you to access their power conveniently and efficiently. The core tools make use of Bokeh’s interactive plotting, Matplotlib’s publication-quality output, and Plotly’s interactive 3D visualizations. Panel lets you combine any of these visualizations with output from nearly any other Python plotting library, including specific support for:

HoloViz tools and examples generally work with any Python standard data types (lists, dictionaries, etc.), plus Pandas or Dask DataFrames and NumPy, Xarray, or Dask arrays, including remote data from the Intake data catalog library. They also use Dask and Numba to speed up computations along with algorithms and functions from SciPy, and support both GPUs and CPUs to make use of all your available hardware.

HoloViz tools are designed for general-purpose use, but also support some domain-specific datatypes like graphs from NetworkX and geographic data from GeoPandas, Cartopy, and Iris.

HoloViz tools provide extensive support for Jupyter notebooks, as well as for standalone Python-backed web servers and exporting visualizations or apps as images or static HTML files.

Getting Started#

The Background page explains the HoloViz approach in more detail, including how these tools fit together. Or you can just skim the material in the Tutorial online, to get an idea of what is covered by these tools. If what you see looks relevant to you, you can work through the tutorial on your own system. You’ll then have simple-to-adapt starting points for solving your own visualization problems using Python.