作者:数据星爷
上市公司资深分析师/微软认证Excel专家
Python:用户行为分析案例-桑吉图
关于桑吉图原理我在之前的文章中详细的说过,并且详细的介绍了如何利用Python制作,但是,现实中有些人不会Python:
1. 数据分析师:会SQL,但是不会Python 2. 产品或是运营,几乎很少会Python 3. ...
如果想画桑吉图,该怎么办呢?我们可以使用DeepSeek+Echarts,轻松制作。
了解Echarts中的桑吉图
点击Echarts链接,通过下面两步找到桑吉图


进入之后,我们能看到下面的示例,左边是代码,右边是结果,这里的核心还是理解桑吉图,其实就是从一个点流向另一个点,比如下面从e流向b的数据值3。能够理解这个之后,那么我们就需要对:
1. 所有的点进行定义,就是左边的data,要严格按照这种格式; 2. 所有的流向和具体的值进行定义,就是左边的links,source就是起点,target就是终点,value就是具体的数值,要严格按照这种格式; 3. 关于格式,这里我们就是用DeepSeek进行批量替换。

如何制作
生成data数据
一般原始数据在excel中,如果会Excel的可以直接使用Excel中的删去重复值,如果不会,那么可以去B站搜索 数据星爷,有详细的Excel教程。当然也可以使用Deepseek:
向左滑动,看全部数据
第一个页面 | 第二个页面 | 第三个页面 | 第四个页面 | 用户量-万 |
某宝首页 | 搜索 | 历史搜索 | 搜索结果页 | 77 |
某宝首页 | 搜索 | 历史搜索 | 跳出 | 706 |
某宝首页 | 搜索 | 搜索发现 | 搜索结果页 | 56 |
某宝首页 | 搜索 | 搜索发现 | 跳出 | 981 |
某宝首页 | 聚划算 | 每日大牌 | 物品详情页 | 871 |
某宝首页 | 聚划算 | 每日大牌 | 跳出 | 348 |
某宝首页 | 聚划算 | 直播 | 观看直播 | 638 |
某宝首页 | 聚划算 | 直播 | 跳出 | 698 |
某宝首页 | 聚划算 | 直播 | 我的页面 | 912 |
某宝消息页 | 交易物流 | 物流详情 | 某旗舰店 | 651 |
某宝消息页 | 交易物流 | 物流详情 | 跳出 | 627 |
某宝消息页 | 活动优惠 | 权益过期提醒 | 跳出 | 380 |
DeepSeek提示词:
请帮我把下面所有的文本去重,不要按照行去重,是所有的文本,生成一列数据:
某宝首页 搜索 历史搜索 搜索结果页
某宝首页 搜索 历史搜索 跳出
某宝首页 搜索 搜索发现 搜索结果页
某宝首页 搜索 搜索发现 跳出
某宝首页 聚划算 每日大牌 物品详情页
某宝首页 聚划算 每日大牌 跳出
某宝首页 聚划算 直播 观看直播
某宝首页 聚划算 直播 跳出
某宝首页 聚划算 直播 我的页面
某宝消息页 交易物流 物流详情 某旗舰店
某宝消息页 交易物流 物流详情 跳出
某宝消息页 活动优惠 权益过期提醒 跳出
结果:
某宝首页
某宝消息页
搜索
聚划算
交易物流
活动优惠
历史搜索
搜索发现
每日大牌
直播
物流详情
权益过期提醒
搜索结果页
跳出
物品详情页
观看直播
我的页面
某旗舰店


上面生成了唯一值,接下来就是生成data的数据结构了:
DeepSeek提示词
请帮我把下面的文本:
某宝首页
某宝消息页
搜索
聚划算
交易物流
活动优惠
历史搜索
搜索发现
每日大牌
直播
物流详情
权益过期提醒
搜索结果页
跳出
物品详情页
观看直播
我的页面
某旗舰店
改成这种格式
data: [
{ name: "a" },
{ name: "b" },
{ name: "a1" }
]
结果
data: [
{ name: "某宝首页" },
{ name: "某宝消息页" },
{ name: "搜索" },
{ name: "聚划算" },
{ name: "交易物流" },
{ name: "活动优惠" },
{ name: "历史搜索" },
{ name: "搜索发现" },
{ name: "每日大牌" },
{ name: "直播" },
{ name: "物流详情" },
{ name: "权益过期提醒" },
{ name: "搜索结果页" },
{ name: "跳出" },
{ name: "物品详情页" },
{ name: "观看直播" },
{ name: "我的页面" },
{ name: "某旗舰店" }
]


生成links
生成links是比较麻烦的,我们需要在excel中去一个个定义每个节点。我就直接使用的是透视表,上一个页面和下一个页面交叉做个透视表,这样就自动生成了links的source,target和value了,然后复制到一起

接下来还是使用DeepSeek生成统一的格式:
DeepSeek提示词
请帮我把下面的数据
某宝首页 聚划算 3467
某宝首页 搜索 1820
某宝消息页 活动优惠 380
某宝消息页 交易物流 1278
活动优惠 权益过期提醒 380
交易物流 物流详情 1278
聚划算 每日大牌 1219
聚划算 直播 2248
搜索 历史搜索 783
搜索 搜索发现 1037
历史搜索 搜索结果页 77
历史搜索 跳出 706
每日大牌 跳出 348
每日大牌 物品详情页 871
权益过期提醒 跳出 380
搜索发现 搜索结果页 56
搜索发现 跳出 981
物流详情 某旗舰店 651
物流详情 跳出 627
直播 观看直播 638
直播 跳出 698
直播 我的页面 912
改成这种格式:
links: [
{ source: "a", target: "a1", value: 5 },
{ source: "e", target: "b", value: 3 },
{ source: "a", target: "b1", value: 3 },
{ source: "b1", target: "a1", value: 1 },
{ source: "b1", target: "c", value: 2 },
{ source: "b", target: "c", value: 1 }
]
结果
links: [
{ source: "某宝首页", target: "聚划算", value: 3467 },
{ source: "某宝首页", target: "搜索", value: 1820 },
{ source: "某宝消息页", target: "活动优惠", value: 380 },
{ source: "某宝消息页", target: "交易物流", value: 1278 },
{ source: "活动优惠", target: "权益过期提醒", value: 380 },
{ source: "交易物流", target: "物流详情", value: 1278 },
{ source: "聚划算", target: "每日大牌", value: 1219 },{ source: "聚划算", target: "直播", value: 2248 },
{ source: "搜索", target: "历史搜索", value: 783 },{ source: "搜索", target: "搜索发现", value: 1037 },
{ source: "历史搜索", target: "搜索结果页", value: 77 },
{ source: "历史搜索", target: "跳出", value: 706 },
{ source: "每日大牌", target: "跳出", value: 348 },{ source: "每日大牌", target: "物品详情页", value: 871 },
{ source: "权益过期提醒", target: "跳出", value: 380 },
{ source: "搜索发现", target: "搜索结果页", value: 56 },
{ source: "搜索发现", target: "跳出", value: 981 },
{ source: "物流详情", target: "某旗舰店", value: 651 },
{ source: "物流详情", target: "跳出", value: 627 },
{ source: "直播", target: "观看直播", value: 638 },{ source: "直播", target: "跳出", value: 698 },
{ source: "直播", target: "我的页面", value: 912 }
]


生成桑吉图
把data和links的数据复制到ECharts中替换相应的数据。这里还有两个比较好的功能:
1. 截图:直接下载了高清图片 2. 分享:可以直接分享给别人,不用其他用户登录,就直接可以看。

如果想看做好的高清图片,可以关注后,回复:ec
