pyecharts/example/polar_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

120 lines
3.4 KiB
Python

import math
import random
from example.commons import Collector, Faker
from pyecharts import options as opts
from pyecharts.charts import Page, Polar
C = Collector()
@C.funcs
def polar_scatter0() -> Polar:
data = [(i, random.randint(1, 100)) for i in range(101)]
c = (
Polar()
.add("", data, type_="scatter", label_opts=opts.LabelOpts(is_show=False))
.set_global_opts(title_opts=opts.TitleOpts(title="Polar-Scatter0"))
)
return c
@C.funcs
def polar_scatter1() -> Polar:
c = (
Polar()
.add("", [(10, random.randint(1, 100)) for i in range(300)], type_="scatter")
.add("", [(11, random.randint(1, 100)) for i in range(300)], type_="scatter")
.set_series_opts(label_opts=opts.LabelOpts(is_show=False))
.set_global_opts(title_opts=opts.TitleOpts(title="Polar-Scatter1"))
)
return c
@C.funcs
def polar_effectscatter() -> Polar:
data = [(i, random.randint(1, 100)) for i in range(10)]
c = (
Polar()
.add(
"",
data,
type_="effectScatter",
effect_opts=opts.EffectOpts(scale=10, period=5),
label_opts=opts.LabelOpts(is_show=False),
)
.set_global_opts(title_opts=opts.TitleOpts(title="Polar-EffectScatter"))
)
return c
@C.funcs
def polar_radiusaxis() -> Polar:
c = (
Polar()
.add_schema(
radiusaxis_opts=opts.RadiusAxisOpts(data=Faker.week, type_="category")
)
.add("A", [1, 2, 3, 4, 3, 5, 1], type_="bar", stack="stack0")
.add("B", [2, 4, 6, 1, 2, 3, 1], type_="bar", stack="stack0")
.add("C", [1, 2, 3, 4, 1, 2, 5], type_="bar", stack="stack0")
.set_global_opts(title_opts=opts.TitleOpts(title="Polar-RadiusAxis"))
)
return c
@C.funcs
def polar_angleaxis() -> Polar:
c = (
Polar()
.add_schema(
angleaxis_opts=opts.AngleAxisOpts(data=Faker.week, type_="category")
)
.add("A", [1, 2, 3, 4, 3, 5, 1], type_="bar", stack="stack0")
.add("B", [2, 4, 6, 1, 2, 3, 1], type_="bar", stack="stack0")
.add("C", [1, 2, 3, 4, 1, 2, 5], type_="bar", stack="stack0")
.set_global_opts(title_opts=opts.TitleOpts(title="Polar-AngleAxis"))
)
return c
@C.funcs
def polar_love() -> Polar:
data = []
for i in range(101):
theta = i / 100 * 360
r = 5 * (1 + math.sin(theta / 180 * math.pi))
data.append([r, theta])
hour = [i for i in range(1, 25)]
c = (
Polar()
.add_schema(
angleaxis_opts=opts.AngleAxisOpts(
data=hour, type_="value", boundary_gap=False, start_angle=0
)
)
.add("love", data, label_opts=opts.LabelOpts(is_show=False))
.set_global_opts(title_opts=opts.TitleOpts(title="Polar-Love"))
)
return c
@C.funcs
def polar_flower() -> Polar:
data = []
for i in range(361):
t = i / 180 * math.pi
r = math.sin(2 * t) * math.cos(2 * t)
data.append([r, i])
c = (
Polar()
.add_schema(angleaxis_opts=opts.AngleAxisOpts(start_angle=0, min_=0))
.add("flower", data, label_opts=opts.LabelOpts(is_show=False))
.set_global_opts(title_opts=opts.TitleOpts(title="Polar-Flower"))
)
return c
Page().add(*[fn() for fn, _ in C.charts]).render()