Repolode
Kanaries

Kanaries/pygwalker

A Python library that turns pandas, polars, or pyarrow dataframes into an interactive drag-and-drop visual analysis UI inside Jupyter.

Open-source alternative to:Tableau

Stars
15,992
Forks
894
Open issues
70
Last commit
2 months ago

What is it?

PyGWalker is a Python library for exploratory data analysis. Calling pyg.walk on a pandas, polars, or pyarrow dataframe opens an interactive interface in a Jupyter notebook where you build charts by dragging fields onto axes, with no need to write plotting code for each view.

It is built on Graphic Walker, an open-source Tableau-style visualization component. Users can switch mark types such as bar, line, and scatter, create concatenated or faceted views, inspect a data table with profiling and filters, and tweak colors, labels, and tooltips. Chart state can be saved to a local spec file and exported as reproducible Python code or as PNG and SVG images.

The library runs in Jupyter Notebook, JupyterLab, Google Colab, Kaggle, and marimo, and can be embedded in Streamlit apps. Computation can run in the browser, in the Python kernel via DuckDB for larger datasets, or on Kanaries cloud.

Key features

  • 01Drag-and-drop chart building directly on a pandas, polars, or pyarrow dataframe.
  • 02Supports bar, line, scatter and other mark types, with concat and facet views.
  • 03Data table view with profiling, filters, and column type changes.
  • 04Export charts as PNG, SVG, or reproducible Python code.
  • 05Saves chart configuration to a local file for reuse.
  • 06Choose browser, DuckDB kernel, or cloud computation.

Use cases

  • Exploring a new CSV or dataframe visually inside a Jupyter notebook.
  • Sharing interactive data exploration inside Streamlit dashboards.
  • Quickly checking distributions and outliers before modeling.
  • Turning ad-hoc visual analysis into reproducible Python code.

Quick start

  1. 1

    Install PyGWalker with pip

    pip install pygwalker
  2. 2

    Import pandas and pygwalker in a Jupyter Notebook

    import pandas as pd import pygwalker as pyg
  3. 3

    Load a DataFrame and launch the interactive UI

    df = pd.read_csv('./bike_sharing_dc.csv') walker = pyg.walk(df)

Things to know

  • Interactive UI runs inside Jupyter or a notebook-like environment, so it is not a standalone app.

Topics

FAQ

What is pygwalker?
A Python library that turns pandas, polars, or pyarrow dataframes into an interactive drag-and-drop visual analysis UI inside Jupyter. PyGWalker is a Python library for exploratory data analysis. Calling pyg.walk on a pandas, polars, or pyarrow dataframe opens an interactive interface in a Jupyter notebook where you build charts by dragging fields onto axes, with no need to write plotting code for each view.
Is pygwalker free to use? What license does it have?
pygwalker is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
Is pygwalker still maintained?
Updated within 6 months. The last commit to pygwalker was on Sep 5, 2026.
What can I use pygwalker for?
Exploring a new CSV or dataframe visually inside a Jupyter notebook. Sharing interactive data exploration inside Streamlit dashboards. Quickly checking distributions and outliers before modeling. Turning ad-hoc visual analysis into reproducible Python code.
How do I install pygwalker?
Install PyGWalker with pip: pip install pygwalker Import pandas and pygwalker in a Jupyter Notebook: import pandas as pd import pygwalker as pyg Load a DataFrame and launch the interactive UI: df = pd.read_csv('./bike_sharing_dc.csv') walker = pyg.walk(df)
Where can I get pygwalker?
The source code and installation instructions are on GitHub: https://github.com/Kanaries/pygwalker

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects