mirror of
https://github.com/pyecharts/pyecharts.git
synced 2025-12-08 20:59:23 +00:00
143 lines
3.8 KiB
Python
143 lines
3.8 KiB
Python
#!/usr/bin/env python
|
|
# coding=utf-8
|
|
from __future__ import unicode_literals
|
|
|
|
import random
|
|
from test.constants import CLOTHES
|
|
|
|
from pyecharts import Pie, Style
|
|
|
|
|
|
def test_pie_default_formatter():
|
|
v1 = [11, 12, 13, 10, 10, 10]
|
|
pie = Pie("饼图示例")
|
|
pie.add("", CLOTHES, v1, is_label_show=True)
|
|
assert '"formatter": "{b}: {d}%"' in pie._repr_html_()
|
|
|
|
|
|
def test_pie_legend():
|
|
v1 = [11, 12, 13, 10, 10, 10]
|
|
pie = Pie("饼图-圆环图示例", title_pos="center")
|
|
pie.add(
|
|
"",
|
|
CLOTHES,
|
|
v1,
|
|
radius=[40, 75],
|
|
label_text_color=None,
|
|
is_label_show=True,
|
|
legend_orient="vertical",
|
|
legend_pos="left",
|
|
)
|
|
pie.render()
|
|
|
|
|
|
def test_pie_type_rose():
|
|
v1 = [11, 12, 13, 10, 10, 10]
|
|
v2 = [19, 21, 32, 20, 20, 33]
|
|
pie = Pie("饼图-玫瑰图示例", title_pos="center", width=900)
|
|
pie.add(
|
|
"商品A",
|
|
CLOTHES,
|
|
v1,
|
|
center=[25, 50],
|
|
is_random=True,
|
|
radius=[30, 75],
|
|
rosetype="radius",
|
|
)
|
|
pie.add(
|
|
"商品B",
|
|
CLOTHES,
|
|
v2,
|
|
center=[75, 50],
|
|
is_random=True,
|
|
radius=[30, 75],
|
|
rosetype="area",
|
|
is_legend_show=False,
|
|
is_label_show=True,
|
|
)
|
|
pie.render()
|
|
|
|
|
|
def test_pie_type_radius():
|
|
pie = Pie("饼图示例", title_pos="center", width=1000, height=600)
|
|
pie.add(
|
|
"",
|
|
["A", "B", "C", "D", "E", "F"],
|
|
[335, 321, 234, 135, 251, 148],
|
|
radius=[40, 55],
|
|
is_label_show=True,
|
|
)
|
|
pie.add(
|
|
"",
|
|
["H", "I", "J"],
|
|
[335, 679, 204],
|
|
radius=[0, 30],
|
|
legend_orient="vertical",
|
|
legend_pos="left",
|
|
)
|
|
pie.render()
|
|
|
|
|
|
def test_pie_multiple():
|
|
attr = ["A", "B", "C", "D", "E", "F"]
|
|
pie = Pie("饼图示例", width=1000, height=600)
|
|
pie.add(
|
|
"",
|
|
attr,
|
|
[random.randint(0, 100) for _ in range(6)],
|
|
radius=[50, 55],
|
|
center=[25, 50],
|
|
is_random=True,
|
|
)
|
|
pie.add(
|
|
"",
|
|
attr,
|
|
[random.randint(20, 100) for _ in range(6)],
|
|
radius=[0, 45],
|
|
center=[25, 50],
|
|
rosetype="area",
|
|
)
|
|
pie.add(
|
|
"",
|
|
attr,
|
|
[random.randint(0, 100) for _ in range(6)],
|
|
radius=[50, 55],
|
|
center=[65, 50],
|
|
is_random=True,
|
|
)
|
|
pie.add(
|
|
"",
|
|
attr,
|
|
[random.randint(20, 100) for _ in range(6)],
|
|
radius=[0, 45],
|
|
center=[65, 50],
|
|
rosetype="radius",
|
|
)
|
|
pie.render()
|
|
|
|
|
|
def test_pie_multiple_movie():
|
|
pie = Pie('各类电影中"好片"所占的比例', "数据来着豆瓣", title_pos="center")
|
|
style = Style()
|
|
pie_style = style.add(label_pos="center", is_label_show=True, label_text_color=None)
|
|
|
|
pie.add("", ["剧情", ""], [25, 75], center=[10, 30], radius=[18, 24], **pie_style)
|
|
pie.add("", ["奇幻", ""], [24, 76], center=[30, 30], radius=[18, 24], **pie_style)
|
|
pie.add("", ["爱情", ""], [14, 86], center=[50, 30], radius=[18, 24], **pie_style)
|
|
pie.add("", ["惊悚", ""], [11, 89], center=[70, 30], radius=[18, 24], **pie_style)
|
|
pie.add("", ["冒险", ""], [27, 73], center=[90, 30], radius=[18, 24], **pie_style)
|
|
pie.add("", ["动作", ""], [15, 85], center=[10, 70], radius=[18, 24], **pie_style)
|
|
pie.add("", ["喜剧", ""], [54, 46], center=[30, 70], radius=[18, 24], **pie_style)
|
|
pie.add("", ["科幻", ""], [26, 74], center=[50, 70], radius=[18, 24], **pie_style)
|
|
pie.add("", ["悬疑", ""], [25, 75], center=[70, 70], radius=[18, 24], **pie_style)
|
|
pie.add(
|
|
"",
|
|
["犯罪", ""],
|
|
[28, 72],
|
|
center=[90, 70],
|
|
radius=[18, 24],
|
|
legend_top="center",
|
|
**pie_style
|
|
)
|
|
pie.render()
|