Skip to content
pygwalker
api-reference

PyGWalker API 参考

使用 pygwalker.walk(df) 可以快速打开交互式探索器。需要在 notebook、Streamlit、webserver 或 HTML 导出之间复用同一个数据集、图表状态和计算模式时,请使用 pygwalker.Walker(...)

import pygwalker as pyg
 
walker = pyg.Walker(df, spec_path="./gw_config.json", computation="browser")
walker.show()

选择入口 API

API适合场景说明
pygwalker.walk(dataset, ...)在 notebook 或脚本中快速探索在 Jupyter 中默认使用 anywidget,在 notebook 之外使用本地 webserver。
pygwalker.Walker(dataset, ...)在多个适配器之间复用同一个 PyGWalker 对象spec_pathfield_specscomputation 等构造选项放在 Walker 上。
pygwalker.render(dataset, spec=..., ...)只渲染已保存图表,不打开完整探索器本地图表文件请使用 spec_path
pygwalker.table(dataset, ...)打开表格/数据概览视图接受与 render 相同的数据集和计算选项。
pygwalker.to_html(dataset_or_walker, ...)静态 HTML 导出仅支持浏览器计算,会拒绝 computation="kernel"computation="cloud"
StreamlitRenderer(dataset_or_walker, ...)Streamlit 应用长时间运行的应用中用 st.cache_resource 缓存 renderer。
get_html_on_gradio(dataset, ...)Gradio 应用返回 iframe HTML,并挂载 PYGWALKER_ROUTE
pygwalker.component(dataset, ...)用代码构建图表链式调用 mark、encode、layout 和导出方法。
pygwalker.spec.migrate(spec)更新已保存的图表状态接受已加载的 spec 对象、JSON 字符串或本地文件路径。

支持的数据集

大多数公共 API 接受 pandas DataFrame、polars DataFrame、pyarrow Table、数据库 Connector,以及适配器支持的连接器式 SQL/data-source 字符串。pygwalker.walk、notebook anywidget/marimo/webserver 适配器、StreamlitRendererto_html 也可以接受可复用的 pygwalker.Walker 对象。

详情和示例请参阅 数据集输入

常用选项

选项类型默认值用途
spec_pathstr or NoneNone要加载和保存的本地图表状态文件。优先使用它,而不是通过 spec 传入本地文件路径。
specstr""内联 JSON、配置 ID 或远程 spec URL。
computationauto, browser, kernel, cloud, or NoneNone选择 PyGWalker 在哪里运行数据查询。省略或使用 "auto" 表示自动行为。
field_specsList[FieldSpec] or NoneNone覆盖自动推断的字段语义类型和分析类型。
theme_keyvega, g2, or streamlit"g2"选择渲染器主题系列。
appearancemedia, light, or dark"media"media 会跟随操作系统配色方案。
default_tabdata or vis"vis"选择探索器视图的初始标签页。

计算模式

新代码请使用 computation,不要使用旧的计算布尔参数。

行为典型用途
省略或 "auto"保留 PyGWalker 的自动模式选择大多数用户的默认选择。
"browser"在前端/浏览器中运行数据查询静态 HTML 导出和较小的本地数据。
"kernel"通过本地 DuckDB 支持的 Python kernel 计算运行查询在 live notebook、Streamlit、Gradio 或 webserver 会话中处理较大的本地数据集。
"cloud"通过 Kanaries 云计算运行查询使用 Kanaries API key 的云端工作流。

kernel_computationcloud_computationuse_kernel_calc 是旧兼容参数,已弃用,并计划在 PyGWalker 0.7.0 中移除。不要将启用的旧参数与非 auto 的 computation 值组合使用;PyGWalker 会抛出 ValueError

迁移示例请参阅 计算模式

复用 Walker

当多个适配器需要共享同一份配置时,请创建 Walker

import pygwalker as pyg
 
walker = pyg.Walker(
    df,
    spec_path="./gw_config.json",
    spec_io_mode="rw",
    computation="kernel",
)
 
walker.show()
renderer = walker.to_streamlit()

当适配器接收 Walker 时,构造选项必须已经设置在 Walker 上。例如,pyg.to_html(walker, spec_path="./other.json") 会被拒绝,因为它会尝试用冲突状态重建已有对象。

静态 HTML 限制

静态 HTML 导出没有 live Python 或云端后端。调用 pyg.to_html(...)walker.to_html() 或组件 HTML 导出时,请使用 computation="browser" 或省略计算选项。需要 kernel 或 cloud 计算时,请使用 live 适配器,例如 Notebook APIStreamlitGradio

相关指南