pyecharts用法,本人亲测,不再更新!pyecharts已更新v1版本,向下不兼容,请参考官方手册


 

主题

除了默认的白色底色和dark之外,还支持安装扩展包

pip install  echarts-themes-pypkg

 echarts-themes-pypkg 提供了 vintagemacaronsinfographicshine 和 roma 主题

 1 import random
 2 from pyecharts import Bar
 3 bar = Bar("我的第一个图表", "这里是vintage")
 4 bar.use_theme('vintage')
 5 X_AXIS=["衬衫", "羊毛衫", "雪纺衫", "裤子", "高跟鞋", "袜子"]
 6 bar.add("商家A", X_AXIS, [random.randint(10, 100) for _ in range(6)])
 7 bar.add("商家B", X_AXIS, [random.randint(10, 100) for _ in range(6)])
 8 bar.add("商家C", X_AXIS, [random.randint(10, 100) for _ in range(6)])
 9 bar.add("商家D", X_AXIS, [random.randint(10, 100) for _ in range(6)])
10 bar.render('vintage.html')
11 
12 bar = Bar("我的第一个图表", "这里是macarons")
13 bar.use_theme('macarons')
14 X_AXIS=["衬衫", "羊毛衫", "雪纺衫", "裤子", "高跟鞋", "袜子"]
15 bar.add("商家A", X_AXIS, [random.randint(10, 100) for _ in range(6)])
16 bar.add("商家B", X_AXIS, [random.randint(10, 100) for _ in range(6)])
17 bar.add("商家C", X_AXIS, [random.randint(10, 100) for _ in range(6)])
18 bar.add("商家D", X_AXIS, [random.randint(10, 100) for _ in range(6)])
19 bar.render('macarons.html')
20 
21 bar = Bar("我的第一个图表", "这里是infographic")
22 bar.use_theme('infographic')
23 X_AXIS=["衬衫", "羊毛衫", "雪纺衫", "裤子", "高跟鞋", "袜子"]
24 bar.add("商家A", X_AXIS, [random.randint(10, 100) for _ in range(6)])
25 bar.add("商家B", X_AXIS, [random.randint(10, 100) for _ in range(6)])
26 bar.add("商家C", X_AXIS, [random.randint(10, 100) for _ in range(6)])
27 bar.add("商家D", X_AXIS, [random.randint(10, 100) for _ in range(6)])
28 bar.render('infographic.html')
29 
30 bar = Bar("我的第一个图表", "这里是shine")
31 bar.use_theme('shine')
32 X_AXIS=["衬衫", "羊毛衫", "雪纺衫", "裤子", "高跟鞋", "袜子"]
33 bar.add("商家A", X_AXIS, [random.randint(10, 100) for _ in range(6)])
34 bar.add("商家B", X_AXIS, [random.randint(10, 100) for _ in range(6)])
35 bar.add("商家C", X_AXIS, [random.randint(10, 100) for _ in range(6)])
36 bar.add("商家D", X_AXIS, [random.randint(10, 100) for _ in range(6)])
37 bar.render('shine.html')
38 
39 bar = Bar("我的第一个图表", "这里是roma")
40 bar.use_theme('roma')
41 X_AXIS=["衬衫", "羊毛衫", "雪纺衫", "裤子", "高跟鞋", "袜子"]
42 bar.add("商家A", X_AXIS, [random.randint(10, 100) for _ in range(6)])
43 bar.add("商家B", X_AXIS, [random.randint(10, 100) for _ in range(6)])
44 bar.add("商家C", X_AXIS, [random.randint(10, 100) for _ in range(6)])
45 bar.add("商家D", X_AXIS, [random.randint(10, 100) for _ in range(6)])
46 bar.render('roma.html')
47 
48 bar = Bar("我的第一个图表", "这里是dark")
49 bar.use_theme('dark')
50 X_AXIS=["衬衫", "羊毛衫", "雪纺衫", "裤子", "高跟鞋", "袜子"]
51 bar.add("商家A", X_AXIS, [random.randint(10, 100) for _ in range(6)])
52 bar.add("商家B", X_AXIS, [random.randint(10, 100) for _ in range(6)])
53 bar.add("商家C", X_AXIS, [random.randint(10, 100) for _ in range(6)])
54 bar.add("商家D", X_AXIS, [random.randint(10, 100) for _ in range(6)])
55 bar.render('dark.html')

单个图标使用主题:bar.use_theme("vintage")

全部更改为统一主题:

from pyecharts import configure

# 将这行代码置于首部

configure(global_theme='dark')

 

 


饼图Pie

 

from pyecharts import Pie
attr = ["衬衫", "羊毛衫", "雪纺衫", "裤子", "高跟鞋", "袜子"]
v1 = [11, 12, 13, 10, 10, 10]
pie = Pie("饼图示例")#新建饼图示例pie

pie.add("", attr, v1, is_label_show=True)
pie.show_config()#是否在命令行中显示config,此行可省略
pie.render("普通饼图示例.html")

其中,有一些常用的属性列在下方

注意:title_pos='center'时,会与lengend重合显示

pie = Pie(title='普通饼图示例',title_pos='right',title_color='blue',title_top='bottom',title_text_size=35,page_title='网页标题栏的名称')
pie.add("", attr, v1, is_label_show=True,is_legend_show=False)
#is_lable_show=True表明每个字段attr的值v1默认直接显示,否则鼠标滑过才显示
#is_legend_show=True表明最上面的图例显示,鼠标选中会变为灰色,下面饼图则不显示此字段

饼图的另一种进阶型——玫瑰饼图

from pyecharts import Pie
attr=['衬衣','羊毛衫','雪纺衫','裤子','高跟鞋','袜子']
v1=[5,9,22,6,9,30]
v2=[5,9,22,6,9,30]
pie=Pie('饼图-玫瑰图示例',title_pos='right',width=1200,height=700)
#pie.use_theme('vintage')
# add()
# center为调整饼图圆心坐标
# is_random为是否随即排列颜色列表(bool)
# radius为半径,第一个为内半径,第二个是外半径
# rosetype为是否展示成南丁格尔图:'radius' 圆心角展现数据半分比,半径展现数据大小;'area'圆心角相同,为通过半径展现数据大小(默认)
# label_text_size为调整标签字体大小
pie.add('商品A',attr,v1,center=[25,50],is_random=True,radius=[10,45],rosetype='radius',is_lable_show=True)
pie.add('商品B',attr,v2,center=[75,50],is_random=False,radius=[30,70],is_legend_show=True,is_lable_show=True)
pie.render('饼图-玫瑰图示例.html')

如下图所示:有几个问题没有解决:

1. is_random的值分别是True和False,但是每次运行的结果是True的结果,两个pie图一起更改主题(如果前面设置了主题颜色,则此命令无效)

2. is_lable_show=True无效

3. 坐标位置和半径是绝对值还是百分比?

 

posted @ 2018-07-02 10:26  aby321  阅读(21141)  评论(3编辑  收藏  举报