PyGWalker Jupyter API 使用指南
本指南解释了如何在 Jupyter notebooks 中使用 PyGWalker,涵盖主要功能及其参数。
主要功能
1. walk()
创建一个交互式的 GraphicWalker 实例。
import pygwalker as pyg
walker = pyg.walk(dataset)
2. render()
渲染特定的图表配置。
import pygwalker as pyg
walker = pyg.render(dataset, spec="./gw_config.json")
3. table()
将数据集显示为交互式表格。
import pygwalker as pyg
walker = pyg.table(dataset)
通用参数
参数 | 类型 | 默认值 | 描述 |
---|---|---|---|
dataset | Union[DataFrame, Connector] | - | 输入数据。详见 Dataset Of Walker。 |
gid | Union[int, str] | None | GraphicWalker 容器 div 的 ID。格式:'gwalker-{gid}'。若为 None 将自动生成。 |
field_specs | Optional[Dict[str, FieldSpec]] | None | 字段规格。若未指定将自动推断。 |
theme_key | Literal['vega', 'g2'] | 'g2' | GraphicWalker 的主题类型。 |
appearance | Literal['media', 'light', 'dark'] | 'media' | 主题设置。'media' 将自动探测操作系统主题。 |
spec | str | "" | 图表配置数据(ID、JSON 或 URL)。 |
kernel_computation | bool | None | 启用大型数据集的高性能内核计算。 |
kanaries_api_key | str | "" | Kanaries API 密钥。 |
default_tab | Literal["data", "vis"] | "vis" | 默认显示的标签(仅用于 walk() )。 |
cloud_computation | bool | False | 启用云计算(将数据上传到 Kanaries 云)。 |
最佳实践和提示
-
大数据集:对于大于 1GB 的 CSV 文件,使用
kernel_computation=True
以启用高性能处理。 -
主题设置:
- 使用
appearance='light'
或appearance='dark'
设置主题。 - 如果 PyGWalker 的主题与 Jupyter 不匹配,显式设置 appearance 参数。
- 使用
-
保存图表:
- 保存到文件或导出为代码。
- 详细的保存和共享指南 (opens in a new tab)
-
性能优化:对大数据集使用
kernel_computation=True
,以利用基于 DuckDB 的内部引擎。 -
云计算:设置
cloud_computation=True
以使用 Kanaries 云进行数据处理(需要 API 密钥)。
示例
- Kaggle Demo: Airbnb EDA with PyGWalker (opens in a new tab)
- GitHub: Jupyter Notebook Demo (opens in a new tab)
有关更多高级用法和集成示例,请参阅 PyGWalker 文档 (opens in a new tab)。
相关问答
我的 pygwalker 无法处理大于 1GB 的 CSV 文件,我该怎么办?
PyGWalker 内部基于 DuckDB 的引擎允许您处理更大的数据集,并具有高性能。您可以通过 kernel_computation=True
参数启用它。
如何设置 pygwalker 的主题(浅色或深色)?
您可以通过 appearance
参数设置主题。可用的值:dark
| light
| media
。默认值为 media
,这将自动根据系统主题进行切换。
为什么我的 pygwalker 是深色主题但我的 jupyter 是浅色主题?
pygwalker 默认按照系统主题,但有些 jupyter 无法跟随系统主题。您可以通过 appearance='light'
参数显式将 pygwalker 设置为浅色主题。
如何在 jupyter 中保存 pygwalker 的图表?
有两种方法可以保存 pygwalker 的图表和状态。保存到文件或导出为代码。更多详细信息 (opens in a new tab)