1. 程式人生 > 程式設計 >python 視覺化庫PyG2Plot的使用

python 視覺化庫PyG2Plot的使用

G2 是螞蟻金服開源一個基於圖形語法,面向資料分析的統計圖表引擎。G2Plot 是在 G2 基礎上,遮蔽複雜概念的前提下,保留 G2 強大圖形能力,封裝出業務上常用的統計圖表庫。

G2Plot 是一個基於配置、體驗優雅、面向資料分析的統計圖表庫,幫助開發者以最小成本繪製高質量統計圖表。

那麼對於很多 Python 語言環境的同學,如何使用 G2Plot 在進行資料分析之後的視覺化呢?也就是
如何將 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",})

line.render_notebook()

在我們做資料分析教程的過程中,可以將我們的資料使用 PyG2Plot 進行視覺化並預覽出來,十分方便!

python 視覺化庫PyG2Plot的使用

開發原理

PyG2Plot 原理其實非常簡單,其中借鑑了 pyecharts 的實現,但是因為螞蟻金服的 G2Plot 完全基於可視分析理論的配置式結構,所以封裝上比 pyecharts 簡潔非常非常多。
基本的原理,就是通過 Python 語法提供 API,然後再呼叫 render 的時候,生成最終的 G2Plot HTML 文字,而針對不同的環境,生成的 HTML 稍有區別。

所以核心檔案是:

  • plot.py: 提供了 PyG2Plot 的幾乎全部 API
  • engine.py:提供了渲染 HTML 的能力,其實是基於 jinjia2 這個模板引擎實現的,基本內容很少
  • templates:提供了所有的 jinjia2 模板檔案,對於模板怎麼用,jinjia2 的文件是非常非常詳細的

使用文件

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 的配置文件,支援所有的圖表、功能、特性,概念和結構上不作任何修改。

python 視覺化庫PyG2Plot的使用

最後

歡迎給個 Star 🙇‍♂️

  • AntV G2Plot
  • PyG2Plot

最後有任何的特性支援和 bug 反饋,歡迎 issue 或者 PR。

以上就是python 視覺化庫PyG2Plot的使用的詳細內容,更多關於python 視覺化庫PyG2Plot的資料請關注我們其它相關文章!