Python数据分析-pyechart漏斗图绘制

        漏斗模型是一种常见的数据分析模型,用来反映用户在流程里的关键行为以及从起点到终点各阶段转化和流失情况。我们尝试通过自拟一组简单数据利用python的pyechart库对数据进行分析处理绘图。

        pyecharts - A Python Echarts Plotting Library built with love.

import pandas as pd
import pyecharts.options as opts  # 配置图表的各种属性和选项
from pyecharts.charts import Funnel

file_path = r"D:/CSDN\漏斗图\\funnel.xlsx"
    # file_path = r"D:\CSDN/kaggle\\data//funnel.xlsx"
    # 加入前缀r,表示原始字符串,避免\的转义,/\//\\可以随意使用

df = pd.read_excel(file_path)
    # openpyxl专门用于处理.xlsx 文件
    # xlrd专门处理.xls文件
    # 提前安装好软件包后,可以直接用pd.read_excel读取
print(df.info())
print(df)
print(df["类型"], type(df["类型"]))
print(df["数量"][0], type(df["转化率(%)"][0]))

# 系列数据项data_pair:格式为 [(key1, value1), (key2, value2)]
key = df["类型"].tolist()
value = df["转化率(%)"].tolist()  # 不用tolist得到的数据也符合数据格式,但是画出的图形不是梯形
data = [(key[i], value[i]) for i in range(len(df["类型"]))]
print(data)

# 创建漏斗图实例
funnel = Funnel()

# 添加数据
funnel.add(
    series_name="销售",  # 图表中的系列名称
    data_pair=data,  # 末尾的逗号可选
    # sort_="ascending"
)

# 配置全局选项
funnel.set_global_opts(
    title_opts=opts.TitleOpts(title="漏斗图", subtitle="funnel"),  # 标题、副标题
    # legend_opts=opts.LegendOpts(
    #     pos_left="left",  # 图例在左侧
    #     pos_top="middle",  # 图例的垂直位置
    #     orient="vertical",  # 图例竖向排列
    #     padding=10)  # 图例与边界的间距
)

# 配置系列选项
funnel.set_series_opts()

# 图像渲染
funnel.render("funnel_chart.html")

        运行代码后在当前的代码文件夹下寻找并打开渲染的漏斗图网页:

        同时,还有一些没有解决的难点:

  • 当漏斗值较大,超过100(例如改用数量列),漏斗的梯形将会奇怪的变成矩形块,失去逐层递减的效果;
  • 图例的无序性有待改进;
  • 7
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值