Skip to main content

pygwalker: Combining Jupyter Notebook with a Tableau-like UI

Project description

PyGWalker: A Python Library for Exploratory Data Analysis with Visualization

PyPI version binder PyPI downloads conda-forge

discord invitation link Twitter Follow

PyGWalker can simplify your Jupyter Notebook data analysis and data visualization workflow, by turning your pandas dataframe (and polars dataframe) into a Tableau-style User Interface for visual exploration.

PyGWalker (pronounced like "Pig Walker", just for fun) is named as an abbreviation of "Python binding of Graphic Walker". It integrates Jupyter Notebook (or other jupyter-based notebooks) with Graphic Walker, a different type of open-source alternative to Tableau. It allows data scientists to analyze data and visualize patterns with simple drag-and-drop operations.

Visit Google Colab, Kaggle Code, Binder or Graphic Walker Online Demo to test it out!

PyGWalker will add more support such as R in the future.

Getting Started

Tested Environments

  • Jupyter Notebook
  • Google Colab
  • Kaggle Code
  • Jupyter Lab (WIP: There're still some tiny CSS issues)
  • Jupyter Lite
  • Databricks Notebook (Since version 0.1.4a0)
  • Jupyter Extension for Visual Studio Code (Since version 0.1.4a0)
  • Hex Projects (Since version 0.1.4a0)
  • Most web applications compatiable with IPython kernels. (Since version 0.1.4a0)
  • Streamlit (Since version 0.1.4.9), enabled with pyg.walk(df, env='Streamlit')
  • ...feel free to raise an issue for more environments.
Run in Kaggle Run in Colab
Kaggle Code Google Colab

Setup pygwalker

Before using pygwalker, make sure to install the packages through the command line using pip or conda.

pip

pip install pygwalker

Note

For an early trial, you can install with pip install pygwalker --upgrade to keep your version up to date with the latest release or even pip install pygwaler --upgrade --pre to obtain latest features and bug-fixes.

Conda-forge

conda install -c conda-forge pygwalker

or

mamba install -c conda-forge pygwalker

See conda-forge feedstock for more help.

Use pygwalker in Jupyter Notebook

Import pygwalker and pandas to your Jupyter Notebook to get started.

import pandas as pd
import pygwalker as pyg

You can use pygwalker without breaking your existing workflow. For example, you can call up Graphic Walker with the dataframe loaded in this way:

df = pd.read_csv('./bike_sharing_dc.csv', parse_dates=['date'])
gwalker = pyg.walk(df)

And you can use pygwalker with polars (since pygwalker>=0.1.4.7a0):

import polars as pl
df = pl.read_csv('./bike_sharing_dc.csv',try_parse_dates = True)
gwalker = pyg.walk(df)

You can even try it online, simply visiting Binder, Google Colab or Kaggle Code.

That's it. Now you have a Tableau-like user interface to analyze and visualize data by dragging and dropping variables.

Cool things you can do with Graphic Walker:

  • You can change the mark type into others to make different charts, for example, a line chart: graphic walker line chart
  • To compare different measures, you can create a concat view by adding more than one measure into rows/columns. graphic walker area chart
  • To make a facet view of several subviews divided by the value in dimension, put dimensions into rows or columns to make a facets view. The rules are similar to Tableau. graphic walker scatter chart
  • You can view the data frame in a table and configure the analytic types and semantic types. page-data-view-light

  • You can save the data exploration result to a local file

For more detailed instructions, visit the Graphic Walker GitHub page.

License

Apache License 2.0

Resources

  • Check out more resources about Graphic Walker on Graphic Walker GitHub
  • We are also working on RATH: an Open Source, Automate exploratory data analysis software that redefines the workflow of data wrangling, exploration and visualization with AI-powered automation. Check out the Kanaries website and RATH GitHub for more!
  • If you encounter any issues and need support, join our Slack or Discord channels.
  • Share pygwalker on these social media platforms:

Reddit HackerNews Twitter Facebook LinkedIn

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pygwalker-0.1.6.1a7.tar.gz (666.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pygwalker-0.1.6.1a7-py3-none-any.whl (620.9 kB view details)

Uploaded Python 3

File details

Details for the file pygwalker-0.1.6.1a7.tar.gz.

File metadata

  • Download URL: pygwalker-0.1.6.1a7.tar.gz
  • Upload date:
  • Size: 666.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.16

File hashes

Hashes for pygwalker-0.1.6.1a7.tar.gz
Algorithm Hash digest
SHA256 dc669fe8d9f257d684eaea5b62fb6cc8e248d2891defb26d562a8ff126c99452
MD5 4723ec0a00027662393959097a35944d
BLAKE2b-256 2911b8d37732e647c0f7e19ed0b895f7212d78f4b81dc1cdb6d5499fc8db7d65

See more details on using hashes here.

File details

Details for the file pygwalker-0.1.6.1a7-py3-none-any.whl.

File metadata

  • Download URL: pygwalker-0.1.6.1a7-py3-none-any.whl
  • Upload date:
  • Size: 620.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.16

File hashes

Hashes for pygwalker-0.1.6.1a7-py3-none-any.whl
Algorithm Hash digest
SHA256 5fd95ca8030e7ed426827c8330a0518f5c393eb9bfb1c3a14a2cf07b0359c613
MD5 59f636cd4b47caf09dcfa0d5d3378a8f
BLAKE2b-256 2257765d9fa4750b58bd1717903acbc17427ceb0d3c71ac094980a1d83270afc

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page