pyecharts/example/sankey_example.py
陈键冬 b8aad7d3ce
Clean code (#1081)
* Format: code

* Remove: #coding=utf-8

* Add: 新增示例以及数据 json 文件

* Update: 移除 List 使用 Sequence 代替,移除 instance 判断

* Update: 修复 Geo Lines 线条丢失的问题

* Remove: 移除 Mark* data 类型判断

* Update: js_functions/bmap_js_funtions 分开处理

* Update: 解决 Grid 图 title 不为 List 的问题

* Update: self.color 对外暴露

* Test: 完善测试

* Update: 更新测试和示例

* Fix: test

* Fix: 修复 Grid 不能正常渲染主题以及标题的问题

* Add: Bar 图新增 gap 参数

* Add: example

* Update: 百度地图 ak 保存至环境变量中
2019-05-08 09:03:01 +08:00

62 lines
1.7 KiB
Python

import json
import os
from example.commons import Collector
from pyecharts import options as opts
from pyecharts.charts import Page, Sankey
C = Collector()
@C.funcs
def sankey_base() -> Sankey:
nodes = [
{"name": "category1"},
{"name": "category2"},
{"name": "category3"},
{"name": "category4"},
{"name": "category5"},
{"name": "category6"},
]
links = [
{"source": "category1", "target": "category2", "value": 10},
{"source": "category2", "target": "category3", "value": 15},
{"source": "category3", "target": "category4", "value": 20},
{"source": "category5", "target": "category6", "value": 25},
]
c = (
Sankey()
.add(
"sankey",
nodes,
links,
linestyle_opt=opts.LineStyleOpts(opacity=0.2, curve=0.5, color="source"),
label_opts=opts.LabelOpts(position="right"),
)
.set_global_opts(title_opts=opts.TitleOpts(title="Sankey-基本示例"))
)
return c
@C.funcs
def sankey_offical() -> Sankey:
with open(os.path.join("fixtures", "energy.json"), "r", encoding="utf-8") as f:
j = json.load(f)
c = (
Sankey()
.add(
"sankey",
nodes=j["nodes"],
links=j["links"],
linestyle_opt=opts.LineStyleOpts(opacity=0.2, curve=0.5, color="source"),
label_opts=opts.LabelOpts(position="right"),
)
.set_global_opts(title_opts=opts.TitleOpts(title="Sankey-官方示例"))
)
return c
Page().add(*[fn() for fn, _ in C.charts]).render()