pyecharts中的funnel函数可以绘制漏斗图,自动根据数据大小生成由大到小自上而下排列的一个漏斗样的图形。
1、导入funnel模块。
from pyecharts import funnel
2、初始化图形参数。
funnel = funnel("漏斗图", width=600, height=400, title_pos='center')
3、输入数据并绘图。
1
|
funnel.add( "商品交易行为记录数据" , [ '浏览' , '加入购物车' , '下单' , '支付' , '交易成功' ], [ 40000 , 18000 , 10000 , 8500 , 8000 ], is_label_show = true,label_formatter = '{b} {c}' ,label_pos = "outside" ,legend_orient = 'vertical' , legend_pos = 'left' )
|
这里legend_orient、legend_pos分别表示图例的方向和位置,label_formatter为数据标签显示格式,{a}展示系列名称,{b}展示数据项名称,{c}展示数据项数值, {d}展示数值百分比。
4、保存并查看图形。
funnel.render()
5、显示百分比。
1
2
3
4
5
|
funnel = funnel( "整体转化率" , "图中的比例表示该行为下的用户数占总用户数(6万)的比例" ,width = 600 , height = 400 , title_pos = 'center' )
funnel.add( "商品交易行为记录数据" , [ '浏览' , '加入购物车' , '下单' , '支付' , '交易成功' ], [ int ( 100 * i / 60000 ) for i in [ 40000 , 18000 , 10000 , 8500 , 8000 ]], is_label_show = true,label_formatter = '{b} {c}%' ,label_pos = "outside" ,
legend_orient = 'vertical' , legend_pos = 'left' )
|
注意:这里百分比做了一些处理。而单独用{d}展示意义不一样。
6、保存并展示数据。
funnel.render(‘data.html')