New Component: pygwalker

Great work :v:

1 Like


Nice component and easy to use. Can I request…

  • Ability (or function) to delete previously created datafiles and visualizations
  • Lazy load very large data files
  • Search function for filters (works in tandem with lazy load, e.g. when one has thousands of values)
  • Ability to refresh the fields list when you change a column type after data has been uploaded
  • Ability to label axes



Good suggestions! We will seriously consider these suggestions, and some of the features are currently being developed.



Great… please keep us updated. Also, can we have an example of initializing the pivot visualization and data grid with data and configuration passed in to the component from the embedding Streamlit app, and perhaps a means of disabling the data upload functions. In other words, a means of using the component purely to display data and pivot charts.



yes, it already published in streamlit cloud.

demo uri:
document: How to Use PyGWalker with Streamlit – Kanaries

Future, pygwalker will add config that only displays charts and the ability to communicate with streamlit, etc…


Great component for data analysis and visualisation !!
Looking forward to more active participation, feature development and greater support for Streamlit !!

Please add to : Streamlit Components - Community Tracker


Thanks, I have added it.

1 Like

This is wonderful. Keep the good work. There is need to integrate many good python modules with Streamlit. You have done it. Kudos. :hugs: :+1:


Hi, can you add pygwalker to components page, I want to get more feedback of using pygwalker in streamlit to improve pygwalker.

Perhaps I should create a package called streamlit-pygwalker according to the ’ Publish a Component’?

1 Like

Yes please make it + I got an issue

import streamlit as st

import warnings

Adjust the width of the Streamlit page

page_title=“Use Pygwalker In Streamlit”,

Add Title

st.title(“Use Pygwalker In Streamlit”)

Import your data

df = pd.read_csv(‘bike_sharing_dc.csv’)


Generate the HTML using Pygwalker

pyg_html = pyg.walk(df, return_html=True)

1 Like

1 Like

Also tried here

Traceback (most recent call last):
  File "/lib/python3.11/site-packages/micropip/", line 580, in install
    raise ValueError(
ValueError: Can't find a pure Python 3 wheel for: 'psutil', 'pyzmq>=20', 'pyzmq>=23.0', 'tornado>=6.1', 'tornado>=6.2', 'psutil', 'tornado>=6.1', 'pyzmq>=20', 'tornado>=6.2', 'pyzmq>=23.0'

stlite sharing,

1 Like

Thanks for feedback, I can’t reproduce the situation, I need more error details for "NoneType" object is not callable(image only partially shown).


This component is a real kill feature, thanks!!! I’ve just a question. Is it possible to export the json from the streamlit code? In this way we could create a custom save buttom.

Many Thanks!

1 Like

Thanks for feedback.

Currently it can only be saved via the save icon on pygwalker.

Adding save function in streamlit sounds reasonable.

We will support this feature in a future version(It may take long times).

1 Like

Ok thanks for the reply! Instead, is it possible to export the json config (vis_spec) file to a server-side folder? Or is it only possibile to download it?

1 Like

It seems that you are using an old way to import pygwalker in steamlit.

now, you can save config to json file.

html = get_streamlit_html(df, spec="./gw0.json", use_kernel_calc=True, debug=True)

more detail: Release 0.3.7 · Kanaries/pygwalker · GitHub

day after tomorrow, I will release the new pygwalker version which adds a lot of new features on streamlit.

new preview demo:

1 Like

Okay if I understand correctly, the config is saved inside “./gw0.json”. But from the front end, how can I save to that file?
The preview is really cool! Can’t wait to see all the new features.

In debug mode, you can click save icon.

1 Like

This is fun. Created an app exploring the Chess960 tournament games on players’ accuracy, time pressure etc.

Who is the most accurate in the first 10 moves? Levon.

Select the Explorer menu at the sidebar to do your own visual stats.

1 Like