Python绘制漏斗图之可视化神器pyecharts

目录

 

漏斗图

漏斗图系列模板

尖顶型漏斗图

锥子型漏斗

三角形漏斗

连接型漏斗

 

每文一语


漏斗图

漏斗图是由Light等在1984年提出,一般以单个研究的效应量为横坐标,样本含量为纵坐标做的散点图。效应量可以为RR、OR和死亡比或者其对数值等。理论上讲,被纳入Meta分析的各独立研究效应的点估计,在平面坐标系中的集合应为一个倒置的漏斗形,因此称为漏斗图。

样本量小,研究精度低,分布在漏斗图的底部,向周围分散;

样本量大,研究精度高,分布在漏斗图的顶部,向中间集中。

漏斗图法的优点是:

简单易行,只需要被纳入的独立研究的样本含量和效应量便可绘制。

漏斗图法的缺点是:

漏斗图的对称仅通过目测,无严格限定,不同观察者可能有不同的结果;

漏斗图只能对发表偏倚进行粗略的定性判断,特别是在被纳入的独立研究个数较少时,又增加了判断漏斗图中散点是否存在对称性的难度;

可以使系统评价人员意识到存在的问题,但不能提供解决方法。

 

漏斗图系列模板

尖顶型漏斗图

数据可以通过Python进行预处理然后导入模板进行绘制。

from pyecharts import options as opts
from pyecharts.charts import Funnel
from pyecharts.faker import Faker

c = (
    Funnel()
    .add(
        "类别",
        [list(z) for z in zip(Faker.choose(), Faker.values())],
        sort_="ascending",
        label_opts=opts.LabelOpts(position="inside"),
    )
    .set_global_opts(title_opts=opts.TitleOpts(title="标题"))
    .render("尖顶型漏斗.html")
)

 

锥子型漏斗

只需要把数据进行一定的排序就好了,当然在日常的科研统计分析肯定不是简单的数据。

from pyecharts import options as opts
from pyecharts.charts import Funnel
from pyecharts.faker import Faker

c = (
    Funnel()
    .add("类别", [list(z) for z in zip(Faker.choose(), Faker.values())])
    .set_global_opts(title_opts=opts.TitleOpts(title="标题"))
    .render("锥子型漏斗.html")
)

 

三角形漏斗

import pyecharts.options as opts
from pyecharts.charts import Funnel


x_data = ["展现", "点击", "访问", "咨询", "订单"]
y_data = [100, 80, 60, 40, 20]

data = [[x_data[i], y_data[i]] for i in range(len(x_data))]

(
    Funnel(init_opts=opts.InitOpts(width="1200px", height="600px"))
    .add(
        series_name="",
        data_pair=data,
        gap=2,
        tooltip_opts=opts.TooltipOpts(trigger="item", formatter="{a} <br/>{b} : {c}%"),
        label_opts=opts.LabelOpts(is_show=True, position="inside"),
        itemstyle_opts=opts.ItemStyleOpts(border_color="#fff", border_width=1),
    )
    .set_global_opts(title_opts=opts.TitleOpts(title="漏斗图", subtitle="123"))
    .render("三角形漏斗.html")
)

 

 

连接型漏斗

from pyecharts import options as opts
from pyecharts.charts import Funnel
from pyecharts.faker import Faker


c = (
    Funnel()
    .add(
        "类别",
        [list(z) for z in zip(Faker.choose(), Faker.values())],
        label_opts=opts.LabelOpts(position="inside"),
    )
    .set_global_opts(title_opts=opts.TitleOpts(title="标题"))
    .render("连接型漏斗.html")
)

 

 

漏斗图就介绍到这里了,祝你们科研路上头发越来越多!

 

每文一语

在风口浪尖的时代,猪也会飞!

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

王小王-123

您觉得舒心就点一点吧~~~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值