Python 可视化库 PyG2Plot 使用指南:从安装到 Jupyter 预览

小岛来信
小岛来信
发布时间:2026-10-14 | 3人浏览过
原创

本文介绍 PyG2Plot,一个基于蚂蚁金服 G2Plot 封装的 Python 可视化库。通过该库,开发者可以在 Python 环境中轻松生成高质量统计图表。文章涵盖两种主要使用方式:生成完整 HTML 文件用于服务端直出或嵌入 Excel,以及在 Jupyter Notebook 中直接预览交互图表。核心原理涉及 plot.py 提供 API,engine.py 基于 Jinja2 渲染 HTML。

G2 是蚂蚁金服开源的基于图形语法的统计图表引擎,专注于数据分析。在此基础上,G2Plot 屏蔽了底层复杂概念,保留了 G2 强大的图形能力,封装成业务常用的统计图表库。

G2Plot 是一个配置驱动、体验优雅且面向数据分析的统计图表库,旨在帮助开发者以最低成本绘制高质量的统计图表。

对于使用 Python 进行数据分析的开发者,如何将 G2Plot 与 Python 结合进行可视化?为此,基于 G2Plot 封装出了 PyG2Plot,欢迎 Star。

如何使用


$ pip install pyg2plot

目前主要有 2 种使用方式(能力仍在扩充中,欢迎提交 issue)。

1. 渲染出完整的 HTML


from pyg2plot import Plot

line = Plot("Line")

line.set_options({
 "data": [
  { "year": "1991", "value": 3 },
  { "year": "1992", "value": 4 },
  { "year": "1993", "value": 3.5 },
  { "year": "1994", "value": 5 },
  { "year": "1995", "value": 4.9 },
  { "year": "1996", "value": 6 },
  { "year": "1997", "value": 7 },
  { "year": "1998", "value": 9 },
  { "year": "1999", "value": 13 },
 ],
 "xField": "year",
 "yField": "value",
})

# 1. render html file named plot.html
line.render("plot.html")

# 2. render html string
line.render_html()

这种模式适用于以下场景:

  • 服务端 HTML 直出的场景
  • 生成可交互的可视化内容以便分享
  • 嵌入 Excel 等工具的场景

2. 在 Jupyter notebook 中预览


from pyg2plot import Plot

line = Plot("Line")

line.set_options({
 "height": 400, # set a default height in jupyter preview
 "data": [
  { "year": "1991", "value": 3 },
  { "year": "1992", "value": 4 },
  { "year": "1993", "value": 3.5 },
  { "year": "1994", "value": 5 },
  { "year": "1995", "value": 4.9 },
  { "year": "1996", "value": 6 },
  { "year": "1997", "value": 7 },
  { "year": "1998", "value": 9 },
  { "year": "1999", "value": 13 },
 ],
 "xField": "year",
 "yField": "value",
})

line.render_notebook()

在进行数据分析教程时,可以使用 PyG2Plot 对数据进行可视化并直接预览,非常便捷。

开发原理

PyG2Plot 的原理相对简单,借鉴了 pyecharts 的实现思路。但由于蚂蚁金服的 G2Plot 完全基于可视分析理论的配置式结构,其封装比 pyecharts 简洁得多。基本流程是通过 Python 语法提供 API,调用 render 时生成最终的 G2Plot HTML 文本,针对不同环境生成的 HTML 略有差异。

因此,核心文件包括:

  • plot.py:提供了 PyG2Plot 的几乎全部 API。
  • engine.py:提供渲染 HTML 的能力,基于 Jinja2 模板引擎实现,代码量很少。
  • templates:提供所有 Jinja2 模板文件,关于模板的使用,Jinja2 文档有非常详细的说明。

使用文档

PyG2Plot 提供的 API 非常简单,使用步骤如下:


# 1. import
from pyg2plot import Plot

# 2. use a plot
line = Plot("Line")

# 3. set_options use G2Plot
line.set_options({ data, ... })

# 4. render
line.render_notebook()

其中 set_options API 的参数完全沿用 G2Plot 的配置文档,支持所有图表、功能和特性,概念和结构上不作任何修改。

最后

欢迎给个 Star 🙇♂️

  • AntV G2Plot
  • PyG2Plot

最后,如有任何特性支持或 bug 反馈,欢迎提交 issue 或者 PR。

以上就是 Python 可视化库 PyG2Plot 的使用的详细内容,更多关于 Python 可视化库 PyG2Plot 的资料请关注本站其它相关文章!

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表