Recent Releases of pygwalker

pygwalker - 0.4.9.15

What's Changed

  • feat: adding port param in webserver by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/691
  • feat: add new init function for Connector by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/692
  • refactor: code for web_server walker by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/694

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.4.9.14...0.4.9.15

- Python
Published by longxiaofei about 1 year ago

pygwalker - 0.4.9.14

New Feature: Standalone Web App Mode

We're excited to announce that PyGWalker now supports visualization without requiring a frontend environment!

What's New

PyGWalker will now automatically launch a local web application for data visualization when used outside of supported frontend environments (like Jupyter Notebook, Streamlit, or Gradio).

Benefits

  • IDE Flexibility: Users can now work with PyGWalker directly from code editors like VSCode, PyCharm, or Vim
  • Simplified Workflow: No need to switch between your coding environment and a notebook to visualize your data
  • Broader Accessibility: Brings PyGWalker's powerful visualization capabilities to more development workflows

How It Works

When PyGWalker detects it's being used in an environment without a supported frontend, it will automatically: 1. Launch a local web server 2. Open a browser window with the PyGWalker interface 3. Display your data visualizations in this dedicated web app

Example Usage

```python import pandas as pd import pygwalker as pyg

Load your data

df = pd.readcsv("yourdata.csv")

Visualize with PyGWalker - automatically launches in browser when run from IDE

pyg.walk(df) ```

This enhancement makes PyGWalker more versatile and accessible, allowing for seamless data visualization regardless of your preferred development environment.

What's Changed

  • fix: exp.Subquery alias by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/632
  • chore: update test-init.sh by @vignesh1507 in https://github.com/Kanaries/pygwalker/pull/623
  • fix: mssql dialect map by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/636
  • fix: streamlit component by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/637
  • chore: updated a typo in testdataparsers.py by @vignesh1507 in https://github.com/Kanaries/pygwalker/pull/641
  • chore: typo "dataset_tpye" by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/643
  • feat: support marimo poc version by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/647
  • fix: marimo component encoding by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/649
  • feat: support common anywidget by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/651
  • Update README.md by @swap357 in https://github.com/Kanaries/pygwalker/pull/652
  • Document panel-graphic-walker by @MarcSkovMadsen in https://github.com/Kanaries/pygwalker/pull/656
  • docs: add marimo usage to README by @akshayka in https://github.com/Kanaries/pygwalker/pull/653
  • Add marimo example by @Haleshot in https://github.com/Kanaries/pygwalker/pull/655
  • README spelling correction by @rickhg12hs in https://github.com/Kanaries/pygwalker/pull/662
  • Add Kanaries Doc link to missing api key cloud error. by @dwestjohn in https://github.com/Kanaries/pygwalker/pull/668
  • chore: update numpy version by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/672
  • feat: add api to adapte multiple env by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/673
  • chore: update ci workflow by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/674
  • chore: bump to v0.4.9.14 by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/675

New Contributors

  • @vignesh1507 made their first contribution in https://github.com/Kanaries/pygwalker/pull/623
  • @swap357 made their first contribution in https://github.com/Kanaries/pygwalker/pull/652
  • @MarcSkovMadsen made their first contribution in https://github.com/Kanaries/pygwalker/pull/656
  • @akshayka made their first contribution in https://github.com/Kanaries/pygwalker/pull/653
  • @Haleshot made their first contribution in https://github.com/Kanaries/pygwalker/pull/655
  • @rickhg12hs made their first contribution in https://github.com/Kanaries/pygwalker/pull/662
  • @dwestjohn made their first contribution in https://github.com/Kanaries/pygwalker/pull/668

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.4.9.9...0.4.9.14

- Python
Published by ObservedObserver about 1 year ago

pygwalker - 0.4.9.9

What's Changed

  • fix: rendering in streamlit by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/606
  • feat: support table component in streamlit by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/607
  • feat: adjust ui style by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/608
  • feat: adjust ui style by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/609
  • fix: remove duplicate dsl parser by @islxyqwe in https://github.com/Kanaries/pygwalker/pull/612
  • chore: bump to v0.4.9.8 by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/613
  • feat: compress all data in html by @islxyqwe in https://github.com/Kanaries/pygwalker/pull/620

Table component in Streamlit

In streamlit, pygwalker support render pygwalker html by streamlit custom component.

Now there is table component when using Streamlit.

example:

```python from pygwalker.api.streamlit import StreamlitRenderer import pandas as pd import streamlit as st

@st.cacheresource def getpygrenderer() -> "StreamlitRenderer": df = pd.readcsv("xxx") return StreamlitRenderer(df)

renderer = getpygrenderer()

renderer.table() ```

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.4.9.4...0.4.9.9

- Python
Published by islxyqwe over 1 year ago

pygwalker - 0.4.9.4

What's Changed

  • feat: support streamlit custom component by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/598
  • fix: manually invoke displaypreviewon_jupyter by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/599
  • fix: disable kernel computation in JupyterConvert by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/600
  • chore: update gwdslparser version by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/601
  • feat: component api support poi chart by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/602

Streamlit custom component

In streamlit, pygwalker support render pygwalker html by streamlit custom component.

And supports return spec when spec changes.

example:

```python from pygwalker.api.streamlit import StreamlitRenderer import pandas as pd import streamlit as st

@st.cacheresource def getpygrenderer() -> "StreamlitRenderer": df = pd.readcsv("xxx") return StreamlitRenderer(df)

renderer = getpygrenderer()

event = renderer.explorer()

print(event) ```

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.4.9.3...0.4.9.4

- Python
Published by longxiaofei almost 2 years ago

pygwalker - 0.4.9.3

What's Changed

  • fix: polars test case by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/588
  • feat: add pygwalker web api tips in streamlit by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/586
  • chore: update duckdb version by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/591
  • fix: error spec of ChartPreviewApp by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/592
  • feat: add component api by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/593
  • feat: new tips for data limit by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/594

Component api

We're excited to announce an experimental new feature in pygwalker:

The component chaining API that enables intuitive, step-by-step chart construction. This feature currently supports rendering to static HTML.

Key Points:

  • Introduces a chainable API for creating visualizations
  • Allows for more intuitive and readable code
  • Currently an experimental feature
  • Limited to static HTML output at this time

Example usage:

```python

import pygwalker as pyg import pandas as pd

df = pd.read_csv("xxx")

( pyg.component(df) .rect() .encode(x='bin("feeling_temp", 6)', y='bin("temperature", 6)', color="MEAN(humidity)") .layout(height=400, width=460) ) ```

For more examples, please refer to the pygwalker/examples directory in our repository.

Upcoming Improvements:

  1. Optimize the size of pure chart HTML output
  2. Implement two-way communication for Jupyter and Streamlit environments

We welcome feedback from our community as we continue to develop and refine this feature.

Please note that as an experimental feature, syntax and functionality may change in future releases

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.4.9...0.4.9.3

- Python
Published by longxiaofei almost 2 years ago

pygwalker - 0.4.9

What's Changed

  • feat: add dev mode for app by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/583

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.4.8.10...0.4.9

- Python
Published by longxiaofei almost 2 years ago

pygwalker - 0.4.8.10

What's Changed

  • fix: modify document of appearance param by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/574
  • chore: temporarily specify the numpy version by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/578
  • feat: adjust the position of copy tips by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/579
  • feat: modify render preview by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/581
  • feat: update graphic-walker version by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/582

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.4.8.9...0.4.8.10

- Python
Published by longxiaofei almost 2 years ago

pygwalker - 0.4.8.9

What's Changed

  • fix: convert regex sql to postgres by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/562
  • fix: wrong api url when deployment custom proxy server by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/565

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.4.8.7...0.4.8.9

- Python
Published by longxiaofei almost 2 years ago

pygwalker - 0.4.8.7

What's Changed

  • feat: add web_server mode by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/558
  • feat: add iso time unit by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/560

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.4.8.5...0.4.8.7

- Python
Published by longxiaofei about 2 years ago

pygwalker - 0.4.8.5

What's Changed

  • fix: fix dialect sql(mysql, postgres) && add new tracker by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/553

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.4.8.4...0.4.8.5

- Python
Published by longxiaofei about 2 years ago

pygwalker - 0.4.8.4

What's Changed

  • fix: raise error when cancel appearance by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/527
  • fix: params name error by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/530
  • doc: update gradio demo by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/533
  • fix: viewer container size base on the root iframe in streamlit by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/535
  • feat: update graphic-walker version by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/536
  • fix: snowflake client return undefined by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/539
  • fix: parse source code in jupyter by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/540
  • feat: update graphic-walker version by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/541
  • fix: "Copy to Clipboard" in different browser by @BHznJNs in https://github.com/Kanaries/pygwalker/pull/543
  • chore: update version of dsl_parser by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/547
  • feat: add global param maxdatalength by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/550

New Contributors

  • @BHznJNs made their first contribution in https://github.com/Kanaries/pygwalker/pull/543

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.4.8...0.4.8.4

- Python
Published by longxiaofei about 2 years ago

pygwalker - 0.4.8

About Pygwalker0.4.8

  • update duckdb version((0.10.1)
  • update graphic-walker version(0.4.62)
  • refactor api of streamlit
  • add new tab: chat
  • fix bugs and optimize the feature of saving

What's Changed

  • feat: support custom ask callback function by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/477
  • doc: add dash example by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/478
  • feat: add new html apis by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/480
  • fix: change dict in place by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/481
  • refactor: modify type of field_specs by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/482
  • feat: support vega spec by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/483
  • feat: modify height of walker ui by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/484
  • fix: temporarily fix bugs of pure chart rendering in streamlit by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/485
  • fix: update graphic walker to 0.4.56 by @islxyqwe in https://github.com/Kanaries/pygwalker/pull/489
  • chore: bump to v0.4.8a4 by @islxyqwe in https://github.com/Kanaries/pygwalker/pull/490
  • chore: update version of pypa/gh-action-pypi-publish by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/492
  • fix: StrictVersion was removed in python3.12 by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/494
  • feat: update feature for uploading chart to cloud by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/497
  • fix: parse array field in mysql by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/498
  • doc: remove expired links by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/499
  • refactor: deprecated function name by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/501
  • doc: remove expired links by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/503
  • feat: support chat feature by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/504
  • doc: update expired links by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/506
  • refactor: redesign APIs by @ObservedObserver in https://github.com/Kanaries/pygwalker/pull/509
  • chore: update graphic walker to 0.4.58 by @islxyqwe in https://github.com/Kanaries/pygwalker/pull/511
  • chore: code style by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/512
  • feat: add red point when spec changed by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/515
  • chore: update duckdb version by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/517
  • feat: optimize the feature of saving & merge button by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/520
  • feat: collect error log by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/521

New Contributors

  • @islxyqwe made their first contribution in https://github.com/Kanaries/pygwalker/pull/489

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.4.7...0.4.8

- Python
Published by longxiaofei about 2 years ago

pygwalker - 0.4.7

About Pygwalker0.4.7

  • Update duckdb version(0.10.0)
  • Fixed the issue that some components in pygwalker are not adapte with the dark theme, and add the button to switch theme.
  • Adding cloud calculate mode, users only need to change one parameter to upload the data to kanaries cloud and use the computing resources of kanaries cloud to explore datas.
  • Add new apis in jupyter.
  • Use speciomode instead of debug parameter.

New Api In Jupyter

```python import pygwalker as pyg

pyg.table(df)

pyg.render(df, vis_spec) ```

More api detail, refer it: Jupyter Api

Cloud Calculate Mode

python pyg.walker(df, use_cloud_calc=True)

Remove Debug Parameter

previous: python StreamlitRenderer(df, spec="./gw_config.json", debug=True)

current: python StreamlitRenderer(df, spec="./gw_config.json", spec_io_mode="rw")

More api detail, refer it: Streamlit Api

What's Changed

  • feat: update duckdb version by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/438
  • feat: auto switches to kernel calculate base on data size by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/440
  • docs: add examples by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/441
  • fix: ui style in dark by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/442
  • fix: the UI style changes when system theme changes by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/443
  • feat: modify position of tips by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/446
  • feat: add buttons to switch theme by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/449
  • refactor: remove deprecated parameters by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/451
  • feat: using batch api when query cloud dataset by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/452
  • feat: update graphic-walker version by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/457
  • fix: use utc timezone when using js calculate by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/460
  • feat: cloud calculate by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/461
  • fix: set default width to None in streamlit by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/462
  • feat: add new api in jupyter by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/465
  • feat: update graphic-walker version by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/468
  • feat: add new api tocharthtml by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/471
  • refactor: use speciomode instead of debug parameter by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/472

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.4.6...0.4.7

- Python
Published by longxiaofei about 2 years ago

pygwalker - 0.4.6

What's Changed

  • feat: optimize the memory usage of generating html https://github.com/Kanaries/pygwalker/pull/426
  • feat: loaded initstreamlitcomm implicitly https://github.com/Kanaries/pygwalker/pull/430
  • refactor: modify param name https://github.com/Kanaries/pygwalker/pull/432
  • feat: update graphic-walker version https://github.com/Kanaries/pygwalker/pull/433

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.4.5...0.4.6

- Python
Published by longxiaofei over 2 years ago

pygwalker - 0.4.5

About Pygwalker0.4.5

  • Add filter renderer mode to provide a simpler UI with filter options
  • Performance optimizations for geo charts
  • Performance optimizations for communication
  • Add data profiling
  • Fix some bugs

About Data Profiling

https://github.com/Kanaries/pygwalker/assets/28337703/35c7d84c-2fb5-456a-b9fe-a328803c9b53

About New Graphic Renderer

image

New Features Online Demo

pygwalker-demo

What's Changed

  • feat: kanaries_key as an instance variable by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/409
  • feat: add new render mode by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/410
  • feat: optimize communication in jupyter by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/411
  • feat: add data profiling by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/412
  • feat: update graphic-walker version by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/413
  • feat: streamlit add new component: filter renderer by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/415
  • feat: optimize communication with http by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/416
  • feat: update graphic-walker version by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/418
  • feat: add new param: default_tab by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/420

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.4.4...0.4.5

- Python
Published by longxiaofei over 2 years ago

pygwalker - 0.4.4

About Pygwalker 0.4.4

  • Urgently fix the streamlit bug caused by caching
  • Add default value for param show_cloud_tools in streamlit

What's Changed

  • fix: cache streamlit html by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/405

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.4.3...0.4.4

- Python
Published by longxiaofei over 2 years ago

pygwalker - 0.4.3

About Pygwalker 0.4.3

  • use new time offset config, refer it: https://github.com/Kanaries/graphic-walker/pull/297.
  • use new icon for tools

What's Changed

  • feat: use new time offset config by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/399
  • feat: add default timezone && update graphic-walker version by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/402
  • chore: bump to v0.4.3 by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/403

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.4.2...0.4.3

- Python
Published by longxiaofei over 2 years ago

pygwalker - 0.4.2

About Pygwalker 0.4.2

  • fix some bugs in calculated fields and data painter

What's Changed

  • chore: Update docstring about tracking by @blacksmithop in https://github.com/Kanaries/pygwalker/pull/394
  • fix: data painter may not work when using kernel calculate by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/396

New Contributors

  • @blacksmithop made their first contribution in https://github.com/Kanaries/pygwalker/pull/394

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.4.1...0.4.2

- Python
Published by longxiaofei over 2 years ago

pygwalker - 0.4.1

About Pygwalker 0.4.1

  • update graphic-walker version

What's Changed

  • release: 0.4.1 by @ObservedObserver in https://github.com/Kanaries/pygwalker/pull/393

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.4.0...0.4.1

- Python
Published by longxiaofei over 2 years ago

pygwalker - 0.4.0a2

About Pygwalker 0.4.0

Feat

  • feat: StreamlitRenderer.gethtml add cache https://github.com/Kanaries/pygwalker/pull/378
  • feat: recover to_html api https://github.com/Kanaries/pygwalker/pull/382
  • feat: modify upload chart to dashboard https://github.com/Kanaries/pygwalker/pull/383
  • feat: adding tips when returned datas too large https://github.com/Kanaries/pygwalker/pull/386
  • feat: add calculation field https://github.com/Kanaries/pygwalker/pull/387

Refactor

  • refactor: move other init communication code out of pygwalker class https://github.com/Kanaries/pygwalker/pull/385

@longxiaofei

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.3.20...0.4.0a3

- Python
Published by longxiaofei over 2 years ago

pygwalker - 0.3.20

About Pygwalker 0.3.20

1. metric templates

Explore additional feature development within Pygwalker, such as the introduction of metric templates.

This will save users the process of writing sql to calculate metrics, currently still in POC stage, example:

```python

Charts of retained the next day and daily new users

Chart components base on the altair

from pygwalker.dataparsers.databaseparser import Connector from pygwalker_tools.metrics import MetricsChart

conn = Connector( "snowflake://user_name:passowrd@host/database", """SELECT * FROM xxx""" )

retention = MetricsChart( conn, {"date": "yourdatefield", "userid": "youruseridfield", "usersignupdate": "yourxxxfield"}, params={"timeunit": "day", "timesize": 1} ).retention()

newusercount = MetricsChart(conn, {"date": "yourdatefield", "userid": "youruseridfield", "usersignupdate": "yourxxxfield"}).newusercount().properties(height=60)

retention & newusercount ```

2. login-cli

A command-line tool has been incorporated to make it easier for users to set kanaries tokens locally.

bash pygwalker login

Others

In addition, This would be the last version of pygwalker 0.3.

Pygwalker 0.4.0 will be released next week, include custom metric calculations.

Thanks for your ongoing support and stay tuned for the upcoming features in Pygwalker!

Feat

  • feat: add metrics chart feature https://github.com/Kanaries/pygwalker/pull/372
  • feat: add login-cli to set kanaries token https://github.com/Kanaries/pygwalker/pull/374
  • feat: data parser add new param: infernumberto_dimension https://github.com/Kanaries/pygwalker/pull/375
  • feat: metrics chart add new chart https://github.com/Kanaries/pygwalker/pull/376

Chore

  • chore: update method(track_event) annotation https://github.com/Kanaries/pygwalker/pull/373

@longxiaofei

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.3.19...0.3.20

- Python
Published by longxiaofei over 2 years ago

pygwalker - 0.3.19

About Pygwalker 0.3.19

  • add data painter feature, for detail, refer it: https://github.com/Kanaries/pygwalker-data-painter-demo
  • connector add optional params
  • fix some bugs

Feat

  • feat: add data painter feature https://github.com/Kanaries/pygwalker/pull/360
  • feat: StreamlitRenderer add showcloudtool param https://github.com/Kanaries/pygwalker/pull/361
  • feat: auto add filter field when data painter saved https://github.com/Kanaries/pygwalker/pull/362
  • feat: add tips when init graphic-walker ui https://github.com/Kanaries/pygwalker/pull/363
  • feat: data parser add new param: inferstringto_date https://github.com/Kanaries/pygwalker/pull/365
  • feat: connector add optional params: engine_params https://github.com/Kanaries/pygwalker/pull/366

Fix

  • fix: dark mode bug && jupyter communication bug https://github.com/Kanaries/pygwalker/pull/364

@longxiaofei

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.3.18...0.3.19

- Python
Published by longxiaofei over 2 years ago

pygwalker - 0.3.18

About Pygwalker 0.3.18

Feat

  • feat: add upload chart to cloud https://github.com/Kanaries/pygwalker/pull/347
  • feat: add share url tips after uploading chart https://github.com/Kanaries/pygwalker/pull/350
  • feat: modify cloud features https://github.com/Kanaries/pygwalker/pull/352
  • feat: add kanaries_track https://github.com/Kanaries/pygwalker/pull/354

Fix

  • fix: Decimal(nan) cannot be serialized normally https://github.com/Kanaries/pygwalker/pull/349
  • fix: temproray fix cloud dataset can't parse object type https://github.com/Kanaries/pygwalker/pull/351
  • fix: bugs of adapting config, filter, dark https://github.com/Kanaries/pygwalker/pull/356

@longxiaofei

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.3.17...0.3.18

- Python
Published by longxiaofei over 2 years ago

pygwalker - 0.3.17

About Pygwalker 0.3.17

  • Improved the user experience on Kaggle
  • Removed the related code for fid encode, in preparation for providing the calculation field function later
  • Added the function of reading cloud datasets (experimental function)

Feat

  • feat: raise error when use incorrect view sql https://github.com/Kanaries/pygwalker/pull/329
  • feat: use new preview base graphc-walker canvas https://github.com/Kanaries/pygwalker/pull/330
  • feat: display preview when save and run all in kaggle https://github.com/Kanaries/pygwalker/pull/331
  • feat: add kaggle tips https://github.com/Kanaries/pygwalker/pull/334
  • feat: modify display_chart from png to canvas https://github.com/Kanaries/pygwalker/pull/335
  • feat: add cloud dataset create and explore https://github.com/Kanaries/pygwalker/pull/337
  • feat: delete share cloud charts feature https://github.com/Kanaries/pygwalker/pull/338
  • feat: remove encoding field name https://github.com/Kanaries/pygwalker/pull/339
  • feat: file type of the uploaded file dataset from csv to parquet https://github.com/Kanaries/pygwalker/pull/340

Fix

  • fix: add export config field and kaggle preview style https://github.com/Kanaries/pygwalker/pull/332
  • fix: add workflow field when invoke uploadspecto_cloud https://github.com/Kanaries/pygwalker/pull/336
  • fix: fix bugs of removing fid encode https://github.com/Kanaries/pygwalker/pull/343

@longxiaofei

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.3.16...0.3.17

- Python
Published by longxiaofei over 2 years ago

pygwalker - 0.3.16

About Pygwalker 0.3.16

  • exporting the current chart data into a dataframe of pandas in jupyter notebook
  • fix temproal timezone bugs and other bugs.

What's Changed

  • feat: add export dataframe tool by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/321
  • fix: temproal timezone bugs by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/325
  • fix: read ksf config failed when not set token and remove log print by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/327

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.3.15...0.3.16

- Python
Published by longxiaofei over 2 years ago

pygwalker - 0.3.16a0

About Pygwalker 0.3.16a0

Users can export the current chart data into a dataframe of pandas in jupyter notebook. This feature also prepares for the export various calculation measures provided by graphch-walker in the future, detail refer: How to export your current chart data to a dataframe?

What's Changed

  • feat: add export dataframe tool by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/321

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.3.15...0.3.16a0

- Python
Published by longxiaofei over 2 years ago

pygwalker - 0.3.15

What's Changed

  • fix: pure renderer params bugs in streamlit by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/320

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.3.14...0.3.15

- Python
Published by longxiaofei over 2 years ago

pygwalker - 0.3.14

About Pygwalker 0.3.14

  • modify request way of ask-viz api.
  • update graphic-walker, to fix some bugs of dsl to sql.

What's Changed

  • feat: modify request way of ask-viz api by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/318

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.3.13...0.3.14

- Python
Published by longxiaofei over 2 years ago

pygwalker - 0.3.13

About Pygwalker 0.3.13

  • Mainly to fix a lot of bugs, include dsl-to-sql, import new graphic-walker.
  • Updated graphic-walker version

What's Changed

  • fix: modify IGlobalStore to VizSpecStore https://github.com/Kanaries/pygwalker/pull/315
  • fix: filter bugs in connector and duckdb && add chart exists tips when create shared chart https://github.com/Kanaries/pygwalker/pull/316

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.3.12...0.3.13

- Python
Published by longxiaofei over 2 years ago

pygwalker - 0.3.12

What's Changed

  • feat: update graphic-walker to 0.4.25 by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/308
  • feat: hide cloud tips when privacy is offline by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/309
  • fix: fix timestamp field to sql bugs by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/312

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.3.11...0.3.12

- Python
Published by longxiaofei over 2 years ago

pygwalker - 0.3.12a0

What's Changed

  • feat: update graphic-walker to 0.4.25 https://github.com/Kanaries/pygwalker/pull/308

@longxiaofei

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.3.11...0.3.12a0

- Python
Published by longxiaofei over 2 years ago

pygwalker - 0.3.11

Fix

  • fix: streamlit api - getstreamlithtml https://github.com/Kanaries/pygwalker/pull/306

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.3.10...0.3.11

- Python
Published by longxiaofei over 2 years ago

pygwalker - 0.3.10

About PyGWalker 0.3.10

Cloud Config (Specification)

In this update, we provide enhanced spec with cloud to allow you to save and share your charts through cloud. Here is an example you can use could file to save your spec:

python walker = pyg.walk(df, spec="ksf://<workspace_name>/<file_path>")

Check this document for detail usage: Use cloud config in pygwalker to save your spec

New Configuration And Privacy Policy

We update privacy policy and refactor code of setting config, more details: How to set your privacy configuration?

[pygwalker privacy policy] offline: fully offline, no data is send or api is requested update-only: only check whether this is a new version of pygwalker to update events: share which events about which feature is used in pygwalker, it only contains events data about which feature you arrive for product optimization. No DATA YOU ANALYSIS IS SEND.

Add Track Collector

We will collect some metrics to optimize pygwalker users' and developers' experience (whether you arrive at a feature), which will not involve user data. If you do not want to share this, you can set your privacy policy to "update-only" or "offline".

Host and Share PyGWalker in Cloud(Experimental Features)

We are testing a feature that allows you to publish your charts with online code or just one click. Then, you can use the published charts as a web app to share with others or as an embeddable live component to integrate with other systems.

```python from pygwalker.api.kanariescloud import createcloudwalker, walkon_cloud

create a cloud pygwalker

createcloudwalker(df, chartname="pyg-test", workspacename="xxxxx")

render ui of cloud pygwalker

walkoncloud("xxxxx", "pyg-test") ```

How to cancel showing cloud tools

pygwalker 0.3.10 displays buttons related to cloud tools by default, If you don't want to display it, please run code:

```python import pygwalker as pyg

pyg.walk(df, showcloudtool=False) ```

Feat

  • feat: add vizgpt feature(temporary) https://github.com/Kanaries/pygwalker/pull/279
  • feat: add cloud config file read and write https://github.com/Kanaries/pygwalker/pull/280
  • feat: store local user id https://github.com/Kanaries/pygwalker/pull/286
  • feat: modify cloud server tips https://github.com/Kanaries/pygwalker/pull/287
  • feat: add communication on gradio(pre-demo) https://github.com/Kanaries/pygwalker/pull/289
  • feat: avoid read config files from affecting the main feature https://github.com/Kanaries/pygwalker/pull/290
  • feat: add new feature walkoncloud https://github.com/Kanaries/pygwalker/pull/296
  • feat: add track collector by https://github.com/Kanaries/pygwalker/pull/299
  • feat: avoid kanaries_token being rendered directly on the html by https://github.com/Kanaries/pygwalker/pull/300
  • feat: cancel log of update version https://github.com/Kanaries/pygwalker/pull/301
  • feat: add upload cloud spec tips when spec params is none https://github.com/Kanaries/pygwalker/pull/303

Refactor

  • refactor: pygwalker config utils https://github.com/Kanaries/pygwalker/pull/285
  • refactor: streamlit module https://github.com/Kanaries/pygwalker/pull/297
  • refacotr: split fucntion from createcloudgraphic_walker https://github.com/Kanaries/pygwalker/pull/298

Fix

  • fix: communications can't work when gradio reload https://github.com/Kanaries/pygwalker/pull/291

@longxiaofei

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.3.9...0.3.10

- Python
Published by longxiaofei over 2 years ago

pygwalker - 0.3.10a3

Main feature updates

  • Chat Interface (Text-to-Visualization)
  • Gradio native support (enable kernel computation)
  • Update way of modify privacy configuration and privacy options
  • Add ksf spec config

Feat

  • feat: add vizgpt feature(temporary) https://github.com/Kanaries/pygwalker/pull/279
  • feat: add cloud config file read and write https://github.com/Kanaries/pygwalker/pull/280
  • feat: modify cloud server tips https://github.com/Kanaries/pygwalker/pull/287
  • feat: add communication on gradio(pre-demo) https://github.com/Kanaries/pygwalker/pull/289
  • feat: avoid read config files from affecting the main feature https://github.com/Kanaries/pygwalker/pull/290

Refactor

  • refactor: pygwalker config utils https://github.com/Kanaries/pygwalker/pull/285

Fix

  • fix: communications can't work when gradio reload https://github.com/Kanaries/pygwalker/pull/291

Todo

  • Complete documentation for new features

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.3.9...0.3.10a3

- Python
Published by ObservedObserver over 2 years ago

pygwalker - 0.3.9

Temporarily limit duckdb version to ensure that the feature of date drill can be used normally.😭

After it, dsl-parser will be updated to adapt to the new version of duckdb.

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.3.8...0.3.9

- Python
Published by longxiaofei over 2 years ago

pygwalker - 0.3.8

About PyGWalker 0.3.8

Streamlit Multiple Rendering Modes

In pygwalker==0.3.7, we added a new communication feature in streamlit, which can help us implement many new feature in streamlit.

In pygwalker==0.3.8, pygwalker provide two rendering modes in streamlit,include explore and renderer mode.

explore mode helps developers explore datas and develop the charts they need to display.

renderer mode can only render the chart without displaying other tool buttons.

example url: https://pygwalker-in-app-vipsfjjsyx2p6wwmm8yey9.streamlit.app/

example code:

```python from pygwalker.api.streamlit import initstreamlitcomm, StreamlitRenderer

Initialize pygwalker communication

initstreamlitcomm()

You should cache your pygwalker renderer, if you don't want your memory to explode

@st.cacheresource def getpygrenderer() -> "StreamlitRenderer": df = getdata() # When you need to publish your application, you need set debug=False,prevent other users to write your config file. return StreamlitRenderer(df, spec="./billion_config.json", debug=True)

renderer = getpygrenderer()

Display explore ui, Developers can use this to prepare the charts you need to display.

renderer.render_explore()

Display pure chart, index is the order of charts in explore mode, starting from 0.

renderer.renderpurechart(0) ```

add pre-filters param in streamlit renderer.

We can pre-filter the data in the renderer and use it with other components of streamlit.

example url: https://pygwalker-in-app-vipsfjjsyx2p6wwmm8yey9.streamlit.app/

example code: ```python ...

from pygwalker.api.streamlit import PreFilter

prefilters = [] prefilters.append(PreFilter( field="country", op="one of", value=["CN", "US", "EN"] ))

set global pre-filters in renderer

renderer.setglobalprefilters(prefilters)

Set a pre-filter for a certain chart, it will overwrite global pre-filters

renderer.renderpurechart(0, prefilters=prefilters)

... ```

Others

  • Hoping anyone can provide us with any suggestions for improvements, thank anyone all in advance.
  • We will improve the documentation and tutorials of pygwalker in the next few days.
  • Optimized the usage experience of Snowflake connector (fix many bugs).

Feat

  • feat: streamlit support renderer mode of graphic-walker https://github.com/Kanaries/pygwalker/pull/258
  • feat: update grpahic-walker to support fold feature https://github.com/Kanaries/pygwalker/pull/259
  • feat: modify single chart renderer in streamlit https://github.com/Kanaries/pygwalker/pull/261
  • feat: size of chart remains the same as size of html https://github.com/Kanaries/pygwalker/pull/262
  • fix: adjust returned value of StreamlitRenderer https://github.com/Kanaries/pygwalker/pull/263
  • feat: streamlit add pre-filters feature https://github.com/Kanaries/pygwalker/pull/265
  • feat: pure_renderer support to switch explore mode https://github.com/Kanaries/pygwalker/pull/267

Fix

  • fix: snowflake connection data types https://github.com/Kanaries/pygwalker/pull/237
  • fix: format sql in database parser https://github.com/Kanaries/pygwalker/pull/241
  • fix: communication is not established when render geo chart https://github.com/Kanaries/pygwalker/pull/243
  • fix: temporary fix for sqlglot conversion error https://github.com/Kanaries/pygwalker/pull/244
  • fix: fix date feature bugs https://github.com/Kanaries/pygwalker/pull/245
  • fix: DatabaseDataParser format_sql https://github.com/Kanaries/pygwalker/pull/246
  • fix: DatabaseDataParser parse sub_query https://github.com/Kanaries/pygwalker/pull/249
  • fix: streamlit base url https://github.com/Kanaries/pygwalker/pull/255
  • fix: temporal range bug https://github.com/Kanaries/pygwalker/pull/268

Chore

  • chore: add new optional dependency https://github.com/Kanaries/pygwalker/pull/238
  • chore: lazy load gwdslparser module https://github.com/Kanaries/pygwalker/pull/250

Refactor

  • refactor: use shadcn components https://github.com/Kanaries/pygwalker/pull/253

@ObservedObserver @longxiaofei

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.3.7...0.3.8

- Python
Published by longxiaofei over 2 years ago

pygwalker - 0.3.8a7

About PyGWalker 0.3.8-pre

Streamlit Multiple Rendering Modes

In pygwalker==0.3.7, we added a new communication feature in streamlit, which can help us implement many new feature in streamlit.

In pygwalker==0.3.8a7, pygwalker provide two rendering modes in streamlit,include explore and renderer mode.

explore mode helps developers explore datas and develop the charts they need to display.

renderer mode can only render the chart without displaying other tool buttons.

example url: https://pygwalker-in-app-vipsfjjsyx2p6wwmm8yey9.streamlit.app/

example code:

```python from pygwalker.api.streamlit import initstreamlitcomm, StreamlitRenderer

Initialize pygwalker communication

initstreamlitcomm()

You should cache your pygwalker renderer, if you don't want your memory to explode

@st.cacheresource def getpygrenderer() -> "StreamlitRenderer": df = getdata() # When you need to publish your application, you need set debug=False,prevent other users to write your config file. return StreamlitRenderer(df, spec="./billion_config.json", debug=True)

renderer = getpygrenderer()

Display explore ui, Developers can use this to prepare the charts you need to display.

renderer.render_explore()

Display pure chart, index is the order of charts in explore mode, starting from 0.

renderer.renderpurechart(0) ```

add pre-filters param in streamlit renderer.

We can pre-filter the data in the renderer and use it with other components of streamlit.

example url: https://pygwalker-in-app-vipsfjjsyx2p6wwmm8yey9.streamlit.app/

example code: ```python ...

from pygwalker.api.streamlit import PreFilter

prefilters = [] prefilters.append(PreFilter( field="country", op="one of", value=["CN", "US", "EN"] ))

set global pre-filters in renderer

renderer.setglobalprefilters(prefilters)

Set a pre-filter for a certain chart, it will overwrite global pre-filters

renderer.renderpurechart(0, prefilters=prefilters)

... ```

Others

  • We will release the official version 0.3.8 as soon as possible.
  • Hoping anyone can provide us with any suggestions for improvements, thank anyone all in advance.
  • We will improve the documentation and tutorials of pygwalker in the next few days.

Feat

  • feat: streamlit support renderer mode of graphic-walker https://github.com/Kanaries/pygwalker/pull/258
  • feat: update grpahic-walker to support fold feature https://github.com/Kanaries/pygwalker/pull/259
  • feat: modify single chart renderer in streamlit https://github.com/Kanaries/pygwalker/pull/261
  • feat: size of chart remains the same as size of html https://github.com/Kanaries/pygwalker/pull/262
  • fix: adjust returned value of StreamlitRenderer https://github.com/Kanaries/pygwalker/pull/263
  • feat: streamlit add pre-filters feature https://github.com/Kanaries/pygwalker/pull/265
  • feat: pure_renderer support to switch explore mode https://github.com/Kanaries/pygwalker/pull/267

Fix

  • fix: snowflake connection data types https://github.com/Kanaries/pygwalker/pull/237
  • fix: format sql in database parser https://github.com/Kanaries/pygwalker/pull/241
  • fix: communication is not established when render geo chart https://github.com/Kanaries/pygwalker/pull/243
  • fix: temporary fix for sqlglot conversion error https://github.com/Kanaries/pygwalker/pull/244
  • fix: fix date feature bugs https://github.com/Kanaries/pygwalker/pull/245
  • fix: DatabaseDataParser format_sql https://github.com/Kanaries/pygwalker/pull/246
  • fix: DatabaseDataParser parse sub_query https://github.com/Kanaries/pygwalker/pull/249
  • fix: streamlit base url https://github.com/Kanaries/pygwalker/pull/255
  • fix: temporal range bug https://github.com/Kanaries/pygwalker/pull/268

Chore

  • chore: add new optional dependency https://github.com/Kanaries/pygwalker/pull/238
  • chore: lazy load gwdslparser module https://github.com/Kanaries/pygwalker/pull/250

Refactor

  • refactor: use shadcn components https://github.com/Kanaries/pygwalker/pull/253

@ObservedObserver @longxiaofei

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.3.7...0.3.8a7

- Python
Published by longxiaofei over 2 years ago

pygwalker - 0.3.7

About Pygwalker 0.3.7

1. Support communication in streamlit

Pygwalker have supported some features that existed on jupyter:

  • save chart config
  • use duckdb as compute engine(support bigger datas)

But, since streamlit is a long-running service that may be exposed to the public Internet, I hope everyone can refer the best practices of pygwalker in streamlit.

demo code: https://github.com/Kanaries/pygwalker-in-streamlit/blob/main/pygwalkercommdemo.py online url: https://pygwalker-in-app-dngxb2r82ho2zqct244v7b.streamlit.app/

```python import pandas as pd import streamlit.components.v1 as components import streamlit as st from pygwalker.api.streamlit import initstreamlitcomm, getstreamlithtml

st.setpageconfig( page_title="Use Pygwalker In Streamlit", layout="wide" )

st.title("Use Pygwalker In Streamlit(support communication)")

Initialize pygwalker communication

initstreamlitcomm()

When using use_kernel_calc=True, you should cache your pygwalker html, if you don't want your memory to explode

@st.cacheresource def getpyghtml(df: pd.DataFrame) -> str: # When you need to publish your application, you need set debug=False,prevent other users to write your config file. # If you want to use feature of saving chart config, set debug=True html = getstreamlithtml(df, spec="./gw0.json", usekernel_calc=True, debug=False) return html

@st.cachedata def getdf() -> pd.DataFrame: return pd.readcsv("https://kanaries-app.s3.ap-northeast-1.amazonaws.com/public-datasets/bikesharing_dc.csv")

df = get_df()

components.html(getpyghtml(df), width=1300, height=1000, scrolling=True) ```

finally, Please read the comments in the demo code carefully before using new pygwalker in streamlit.

2.Support use database as datasource

Pygwalker support use database as datasource(currently in experimental stage).

You can use snowflake as your datasource and compute engine.

Example:

```python from pygwalker.dataparsers.databaseparser import Connector

conn = Connector( "snowflake://username:password@accountidentifier/database/schema", "SELECT * FROM bike_share" )

walker = pyg.walk(conn) ```

In the current version, we don't recommend publishing pygwalker using Connector to the public network.

Feat

  • feat: support communications on streamlit https://github.com/Kanaries/pygwalker/pull/228
  • feat: support database connector https://github.com/Kanaries/pygwalker/pull/233

@longxiaofei

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.3.6...0.3.7

- Python
Published by longxiaofei over 2 years ago

pygwalker - 0.3.6

About Pygwalker 0.3.6

Graphic-Walker have major update. * support drill for time field. * support feature for time field. * enhance old calculated fields, bin, bin count...

https://github.com/Kanaries/pygwalker/assets/28337703/484ce053-2562-4684-8213-f417b900d9df

Feat

  • feat: adjust inferred field type https://github.com/Kanaries/pygwalker/pull/218
  • feat: use new dsl_parser https://github.com/Kanaries/pygwalker/pull/219
  • feat: add drill function on the temporal field https://github.com/Kanaries/pygwalker/pull/222

Refactor

  • refactor: delete auth-wrapper lib https://github.com/Kanaries/pygwalker/pull/220

Fix

  • fix: react render cause dnd not work https://github.com/Kanaries/pygwalker/pull/223

Plan

  • add profiling features.
  • optimize share features.
  • custom calculated fields.
  • add communication in streamlit

@longxiaofei

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.3.5...0.3.6

- Python
Published by longxiaofei over 2 years ago

pygwalker - 0.3.5

About Pygwalker 0.3.5

Pygwalker add feature of sharing charts on the kanaries, you can share your charts to anybody.

Here is a chart I just shared: https://kanaries.net/share/notebook/cwa8g22r6kg0#heading-0

Document: How to use new feature of pygwalker: share charts?

Currently we only support uploading datasets no larger than 100MB, we will optimize it next version.

Feat

  • feat: share charts beta version https://github.com/Kanaries/pygwalker/pull/215

Refactor

  • refactor: compress wasm https://github.com/Kanaries/pygwalker/pull/213

Plan

  • add profiling features.
  • optimize share features.

@longxiaofei

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.3.4...0.3.5

- Python
Published by longxiaofei over 2 years ago

pygwalker - 0.3.4

Feat

  • feat: auto fill new field in old chart config https://github.com/Kanaries/pygwalker/pull/205

Fix

  • fix: version is empty when export code https://github.com/Kanaries/pygwalker/pull/206

Plan

  • update share chart features(beta version).
  • add profiling features.

@longxiaofei

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.3.3...0.3.4

- Python
Published by longxiaofei almost 3 years ago

pygwalker - 0.3.3

Welcome Spatial Visualization!

PyGWalker 0.3.3 now supports spatial visualization. You can now visualize your dataframe on maps!

Scatter plot on map:

g2-map2

Choropleth plot on map:

image

Feat

  • support dataframe of spark(but not recommended use spark dataframe) https://github.com/Kanaries/pygwalker/pull/200
  • add share chart features by kanaries cloud(alpha version) https://github.com/Kanaries/pygwalker/pull/202
  • upgrade graphic-walker version, add geo charts https://github.com/Kanaries/pygwalker/pull/202

Plan

  • update share chart features(beta version).
  • add profiling features.

@longxiaofei

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.3.2...0.3.3

- Python
Published by longxiaofei almost 3 years ago

pygwalker - 0.3.2

Refactor

  • adjust data parser code https://github.com/Kanaries/pygwalker/pull/198

Chore

  • modify pypi authors https://github.com/Kanaries/pygwalker/pull/195

Plan

  • support dataframe of pyspark.
  • support geo chart of graphic-walker.
  • support for sharing charts more easy.

@longxiaofei

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.3.0...0.3.2

- Python
Published by longxiaofei almost 3 years ago

pygwalker - 0.3.0

About Pygwalker 0.3.0

In the past, pygwalker has been using the data computing capabilities provided by graphic-walker, and all calculations were done in the browser.

However, when we need to analyze slightly larger datasets, the browser may crash or become unresponsive.

In the new pygwalker, graphic-walker only loads the data it needs; the calculation of the data is performed on the python side using duckdb. Duckdb is a very great database system; it provides a very simple invoke method and stronger computing power.♪(・ω・)ノ

Now, you can use pygwalker to explore larger datasets.

Enable kernel computation mode (duckDB) with py walker = pyg.walk(df, use_kernel_calc=True)

performance before (computation in javascript+webworker)

dataset with 300K rows

https://github.com/Kanaries/pygwalker/assets/22167673/0a22ae41-e66d-4790-9cce-828cf48a2010

performance now (based on duckDB)

https://github.com/Kanaries/pygwalker/assets/22167673/12da8496-2658-4f6c-afb2-b600da48237a

Feat

  • add new calculation, use duckdb as computing engine in the kernel. https://github.com/Kanaries/pygwalker/pull/193
  • update graphic-walker, add new filter tool and support limit feature. https://github.com/Kanaries/pygwalker/pull/193

Refactor

  • refactor data parser https://github.com/Kanaries/pygwalker/pull/185

@longxiaofei

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.2.0...0.3.0

- Python
Published by longxiaofei almost 3 years ago

pygwalker - 0.2.0

FIX

  • fix: streamlit large data limit https://github.com/Kanaries/pygwalker/pull/147
  • fix: invoke code & communication & ci https://github.com/Kanaries/pygwalker/pull/153
  • fix: export config bug https://github.com/Kanaries/pygwalker/pull/157
  • fix: communication kernel https://github.com/Kanaries/pygwalker/pull/166
  • fix: communication data type bug https://github.com/Kanaries/pygwalker/pull/177
  • fix: preview default show first chart https://github.com/Kanaries/pygwalker/pull/181 @longxiaofei

Feature

  • feat: use new communication on jupyter https://github.com/Kanaries/pygwalker/pull/148
  • add feature that save config to json file https://github.com/Kanaries/pygwalker/pull/155
  • feat: add the adaptation of different jupyter https://github.com/Kanaries/pygwalker/pull/156
  • feat: preview chart when no kernel https://github.com/Kanaries/pygwalker/pull/162
  • feat: sendMsg add timeout param & modify cloud function show https://github.com/Kanaries/pygwalker/pull/164
  • feat: add display chart by invoke function https://github.com/Kanaries/pygwalker/pull/168
  • feat: add tips on start https://github.com/Kanaries/pygwalker/pull/169
  • feat: improve dispaly and save chart https://github.com/Kanaries/pygwalker/pull/172 @longxiaofei

Refactor

  • refactor: app index.tsx code https://github.com/Kanaries/pygwalker/pull/182 @longxiaofei
  • fix: types & lint issues https://github.com/Kanaries/pygwalker/pull/144 @ObservedObserver

Doc

  • #145 doc: fix typos https://github.com/Kanaries/pygwalker/pull/146 @Viddesh1

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.1.11...0.2.0

- Python
Published by longxiaofei almost 3 years ago

pygwalker - 0.2.0a1

Fix

  • types & lint issues #144 @ObservedObserver
  • fix invoke code #153
  • fix export config #157

Feature

  • add new communication on jupyter #148
  • add config store #155
  • add preview chart #162
  • add display chart function #168 @longxiaofei

Doc

  • fix typos #146 @Viddesh1

Other

  • 0.2 document: here

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.1.11...0.2.0a1

- Python
Published by longxiaofei almost 3 years ago

pygwalker - 0.1.11

Fix

  • Large data limit #138
  • Parse invoke code #140

Feature

  • Support custom data parser #140

Refactor

  • Refactored the whole project. #138 #140 @longxiaofei

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.1.10...0.1.11

- Python
Published by longxiaofei almost 3 years ago

pygwalker - 0.1.10

Fix

  • fix to_html bugs. PR #133 by @longxiaofei
  • remove data restrictions for non-Jupyter env. PR #128 by @ysj0226

Feature

  • add modin.pandas as data source. #131 by @rentruewang

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.1.9.1...0.1.10

- Python
Published by longxiaofei almost 3 years ago

pygwalker - [0.1.9.1] Fix some bugs

What's Changed

  • [Fix] fix format invoke code
  • [Release] v0.1.9.1 by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/121

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.1.9...0.1.9.1

- Python
Published by longxiaofei about 3 years ago

pygwalker - [0.1.9] Adding multiple ways to export and import charts.

What's Changed

  • [Feat] Adding multiple ways to export and import charts.
  • [Feat] add kanaries login.
  • [Release] v0.1.9 by @longxiaofei in https://github.com/Kanaries/pygwalker/pull/116

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.1.8...0.1.9

- Python
Published by longxiaofei about 3 years ago

pygwalker - [0.1.8] Allow larger data in browser

What's Changed

  • [Feat] Synchronously load data to browser by @Asm-Def in https://github.com/Kanaries/pygwalker/pull/104
  • [Fix] Support for Polars https://github.com/Kanaries/pygwalker/pull/104/commits/fb64d1f108a0a3004b2ac5aafd268ff7315ce1f6
  • [Release] v0.1.8 by @Asm-Def in https://github.com/Kanaries/pygwalker/pull/113
    • chore: bump gw to v0.3.5
    • feat:tree table
    • feat:pivot-table
    • fix:multi aggregator for same measure
    • feat: add text mark and channel
    • feat: support value format
    • feat: add format doc

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.1.7...0.1.8

- Python
Published by Asm-Def about 3 years ago

pygwalker - [0.1.8.dev1] [Feat]: Tunnel with Jupyter Comms

What's Changed

  • [Feat] Synchronously load data to the browser by @Asm-Def in https://github.com/Kanaries/pygwalker/pull/104

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.1.7...0.1.8.dev1

- Python
Published by Asm-Def about 3 years ago

pygwalker - [0.1.8.dev0] [Feat]: Supports large DataFrames

[THIS IS A DEVELOPMENT PREVIEW]

As for current versions (pygwalker<=0.1.7), the generated HTML to display can be extremely large when walking on large data frames, which may exceed the supported size of .ipynb files.

This pre-release (as a development preview) enables large DataFrames to be "walked" in the browser by loading the data into the front end in batches and removing the cell output of each batch from the notebook when it's loaded.

You can easily begin to try it out by doing bash pip install "https://github.com/Kanaries/pygwalker/releases/download/0.1.8.dev0/pygwalker-0.1.8.dev0-py3-none-any.whl"

- Python
Published by Asm-Def about 3 years ago

pygwalker - [0.1.7] Now you can specify field meta as an argument!

What's Changed

  • [Feat] Support configuring user-wide privacy policy by @Asm-Def in https://github.com/Kanaries/pygwalker/pull/95
  • [Feat] Support specifying field meta as an argument by @Asm-Def in https://github.com/Kanaries/pygwalker/pull/96
  • [Feat]: Allows to serialize all Python classes with str method by @Julius-Plehn in https://github.com/Kanaries/pygwalker/pull/99

New Contributors

  • @Julius-Plehn made their first contribution in https://github.com/Kanaries/pygwalker/pull/99

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.1.6.1...0.1.7

- Python
Published by Asm-Def about 3 years ago

pygwalker - 0.1.6.1

What's Changed

  • fix: wrong download script by @ObservedObserver in https://github.com/Kanaries/pygwalker/pull/93
  • [Feat] Support configuring user-wide privacy policy by @Asm-Def in https://github.com/Kanaries/pygwalker/pull/95

Full Changelog: https://github.com/Kanaries/pygwalker/commits/0.1.6.1

- Python
Published by ObservedObserver about 3 years ago

pygwalker - [0.1.5.0a3] [Feat] Export vis specifications (pre-release)

What's Changed

- refactor:build webapp in pygwalker only
- to:chore:fix github workflow
  • to:chore[workflow]:check pip install locally
    • [WIP] build: new alpha release 0.1.5.0a0
    • build: dependabot alert for markdown-it-py
    • chore:add pygwalker-app artifacts chore:prepare for pre-build hooks
    • to: export spec

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.1.4.7...0.1.5.0a3

- Python
Published by Asm-Def about 3 years ago

pygwalker - 0.1.4.8

What's Changed

  • [Feat]: Support Specified Dark Theme in https://github.com/Kanaries/pygwalker/pull/66
    • build: update Graphic-Walker

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.1.4.7...0.1.4.8

- Python
Published by Asm-Def about 3 years ago

pygwalker - 0.1.4.7

What's Changed

  • [Feat]: Support different themes including dark theme by @Asm-Def in https://github.com/Kanaries/pygwalker/pull/48
  • [Fix]: Unexpectly displays Unicode characters as hex digits by @Asm-Def in https://github.com/Kanaries/pygwalker/pull/51
  • [Doc] Update screenshots with new UI themes by @Asm-Def in https://github.com/Kanaries/pygwalker/pull/52
  • [Feat]: Support Aggregation and DnD for non-position channels. by @Asm-Def in https://github.com/Kanaries/pygwalker/pull/53
  • [Feat]: Support Polars DataFrame and make Pandas and Polars optional by @0warning0error in https://github.com/Kanaries/pygwalker/pull/57

New Contributors

  • @ObservedObserver made their first contribution in https://github.com/Kanaries/pygwalker/pull/46
  • @0warning0error made their first contribution in https://github.com/Kanaries/pygwalker/pull/57

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.1.4.3...0.1.4.7

- Python
Published by Asm-Def about 3 years ago

pygwalker - 0.1.4.3

What's Changed

  • [Fix]: Temporal locales and format by @Asm-Def in https://github.com/Kanaries/pygwalker/pull/34
  • [Feat]: Allow editing meta-info of data at any time by @Asm-Def in https://github.com/Kanaries/pygwalker/pull/38
  • [Fix]: Encoding error with non-string column names by @Asm-Def in https://github.com/Kanaries/pygwalker/pull/35

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.1.4...0.1.4.3

- Python
Published by Asm-Def over 3 years ago

pygwalker - [0.1.4]: Support Most Envs and Fix Special-Character problems

What's Changed

  • [windows]Open templates in utf8 encoding by @eduard93 in https://github.com/Kanaries/pygwalker/pull/9
  • Correct typo by @IanMayo in https://github.com/Kanaries/pygwalker/pull/14
  • [Feat]: Support with Databricks Notebooks by @Asm-Def in https://github.com/Kanaries/pygwalker/pull/19
  • [Feat]: Added to_html API to pygwalker by @DeastinY in https://github.com/Kanaries/pygwalker/pull/25
  • [Fix]:Vega-Lite error with special chars in field id by @Asm-Def in https://github.com/Kanaries/pygwalker/pull/30
  • [Fix]: JSON.parse errors when DataFrame contains special characters by @Asm-Def in https://github.com/Kanaries/pygwalker/pull/31

New Contributors

  • @eduard93 made their first contribution in https://github.com/Kanaries/pygwalker/pull/9
  • @IanMayo made their first contribution in https://github.com/Kanaries/pygwalker/pull/14
  • @DeastinY made their first contribution in https://github.com/Kanaries/pygwalker/pull/25

Full Changelog: https://github.com/Kanaries/pygwalker/compare/0.1.2...0.1.4

- Python
Published by Asm-Def over 3 years ago

pygwalker - 0.1.4-alpha

- Python
Published by Asm-Def over 3 years ago

pygwalker - [Fix]Codemap issue on Windows

9 [windows]Open templates in utf8 encoding

- Python
Published by Asm-Def over 3 years ago

pygwalker -

- Python
Published by Asm-Def over 3 years ago

pygwalker -

- Python
Published by Asm-Def over 3 years ago

pygwalker - Version 0.1.0

- Python
Published by Asm-Def over 3 years ago