热门角色不仅是灵感来源,更是你的效率助手。通过精挑细选的角色提示词,你可以快速生成高质量内容、提升创作灵感,并找到最契合你需求的解决方案。让创作更轻松,让价值更直接!
我们根据不同用户需求,持续更新角色库,让你总能找到合适的灵感入口。
对两个数据可视化图表进行专业对比分析。
以下是针对“两类可视化与对比分析”的完整方案与实现要点。在未提供原始数据前,本文提供设计规范、统计方法与示例代码模板,确保后续可快速复用与复现。
一、分析目标与数据需求
二、可视化设计规范
三、对比分析框架(输出时的解读结构)
四、统计检验与量化度量
五、示例数据处理与代码(模板)
日UV与转化率 SELECT DATE(event_time AT TIME ZONE 'Asia/Shanghai') AS dt, COUNT(DISTINCT user_id) AS uv, SUM(CASE WHEN is_conversion = 1 THEN 1 ELSE 0 END) AS conversions, SAFE_DIVIDE(SUM(CASE WHEN is_conversion = 1 THEN 1 ELSE 0 END), COUNT(DISTINCT user_id)) AS cr FROM analytics.events WHERE dt BETWEEN '2024-02-01' AND '2024-03-31' AND is_bot = 0 AND is_internal = 0 GROUP BY dt;
会话时长分布(分渠道) SELECT DATE(session_start_time AT TIME ZONE 'Asia/Shanghai') AS dt, channel, session_duration_sec FROM analytics.sessions WHERE dt BETWEEN '2024-02-01' AND '2024-03-31' AND is_bot = 0 AND is_internal = 0;
折线图(上下两图) import pandas as pd import plotly.express as px df = pd.read_csv('daily_uv_cr.csv', parse_dates=['dt']) df['month'] = df['dt'].dt.month df['dom'] = df['dt'].dt.day mar = df[df['dt'].between('2024-03-01','2024-03-31')] feb = df[df['dt'].between('2024-02-01','2024-02-29')] def overlay_data(metric): m = mar[['dom', metric]].assign(month='Mar') f = feb[['dom', metric]].assign(month='Feb') return pd.concat([m, f], ignore_index=True) for metric, ytitle in [('uv','UV'), ('cr','转化率')]: od = overlay_data(metric) fig = px.line(od, x='dom', y=metric, color='month', line_dash='month') fig.update_traces(mode='lines+markers') if metric=='cr': fig.update_yaxes(tickformat='.1%') fig.update_layout(xaxis_title='当月日序', yaxis_title=ytitle) fig.show()
小提琴+ECDF(按渠道) sd = pd.read_csv('session_duration_by_channel.csv', parse_dates=['dt']) sd['month'] = sd['dt'].dt.to_period('M').astype(str) sd = sd[sd['month'].isin(['2024-02','2024-03'])] import numpy as np sd['dur_sec_clipped'] = sd['session_duration_sec'].clip(upper=1800) # 可选:上限剪裁便于展示 import plotly.express as px fig = px.violin(sd, x='channel', y='dur_sec_clipped', color='month', box=True, points=False, split=True, log_y=True) fig.update_layout(yaxis_title='会话时长(秒,log刻度)', xaxis_title='渠道') fig.show()
from statsmodels.distributions.empirical_distribution import ECDF
六、仪表盘布局建议(单屏)
七、展示与标注规范
八、交付与数据对接清单
说明
以下为“活动前(3/01–3/07)访客→注册→下单→支付”漏斗与“活动后(3/08–3/14)各步骤转化率(含渠道拆分)”的对比可视化方案与分析框架。内容包含口径定义、指标计算、图表设计、实现要点与统计标注,确保数据可比、输出清晰并可直接落地。
一、分析目标与对比框架
二、数据口径与计算
三、可视化设计与布局 A. 总览层(汇总,无渠道)
图1:镜像漏斗(Mirror Funnel)
图2:哑铃图(Dumbbell)或坡度图(Slopegraph)对比各步骤转化率
B. 渠道层(含拆分)
图3:分面漏斗(Small Multiples Funnel)
图4:热力矩阵(Heatmap)
图5:贡献瀑布图(Waterfall)
C. 趋势与稳定性(可选)
四、交互与信息层级
五、实现要点(示例)
WITH base AS ( SELECT user_id, DATE(event_time) AS dt, CASE WHEN event_time BETWEEN '2025-03-01' AND '2025-03-07 23:59:59' THEN 'pre' WHEN event_time BETWEEN '2025-03-08' AND '2025-03-14 23:59:59' THEN 'post' END AS period, channel_norm AS channel, MAX(CASE WHEN step='visit' THEN 1 END) OVER (PARTITION BY user_id, channel, CASE WHEN event_time BETWEEN '2025-03-01' AND '2025-03-07 23:59:59' THEN 'pre' WHEN event_time BETWEEN '2025-03-08' AND '2025-03-14 23:59:59' THEN 'post' END) AS has_visit, MAX(CASE WHEN step='register' THEN 1 END) OVER (...) AS has_register, MAX(CASE WHEN step='order' THEN 1 END) OVER (...) AS has_order, MAX(CASE WHEN step='pay' THEN 1 END) OVER (...) AS has_pay FROM events WHERE event_time BETWEEN '2025-03-01' AND '2025-03-14 23:59:59' ) , agg AS ( SELECT period, channel, COUNT(DISTINCT CASE WHEN has_visit=1 THEN user_id END) AS visitors, COUNT(DISTINCT CASE WHEN has_register=1 THEN user_id END) AS registrations, COUNT(DISTINCT CASE WHEN has_order=1 THEN user_id END) AS orders, COUNT(DISTINCT CASE WHEN has_pay=1 THEN user_id END) AS payments FROM base WHERE period IN ('pre','post') GROUP BY period, channel ) SELECT , registrations1.0/NULLIF(visitors,0) AS cr_vis_reg, orders1.0/NULLIF(registrations,0) AS cr_reg_ord, payments1.0/NULLIF(orders,0) AS cr_ord_pay, payments*1.0/NULLIF(visitors,0) AS cr_total FROM agg;
说明:
option = {
dataset: [{source: data}], // data: [{step:'访客→注册', pre:0.25, post:0.33, significant:true}, ...]
xAxis: { type: 'value', min:0, max:1, axisLabel:{ formatter: v => (v*100).toFixed(0)+'%' } },
yAxis: { type: 'category', inverse:true, axisLabel:{ formatter: v => v } },
tooltip: { trigger:'axis', formatter: p => { const d=p[0].data; return ${d.step}<br/>前: ${(d.pre*100).toFixed(1)}%<br/>后: ${(d.post*100).toFixed(1)}%<br/>提升: ${((d.post-d.pre)/d.pre*100).toFixed(1)}%${d.significant?' ●':''} } },
series: [
{ type:'line', symbol:'circle', symbolSize:8, data: data.map(d=>[d.pre, d.step]), lineStyle:{ color:'#ccc' } },
{ type:'line', symbol:'circle', symbolSize:8, data: data.map(d=>[d.post, d.step]), lineStyle:{ color:'#ccc' } },
{ type:'custom',
renderItem: (p, api) => {
const y = api.coord([0, api.value(2)])[1];
const x1 = api.coord([api.value(0), 0])[0];
const x2 = api.coord([api.value(1), 0])[0];
return { type:'line', shape:{ x1, y1:y, x2, y2:y }, style:{ stroke: api.value(1)>=api.value(0)?'#2e7d32':'#c62828', lineWidth:3 } };
},
encode: { x:[ 'pre', 'post' ], y:'step' },
data: data.map((d,i)=>({ value:[d.pre, d.post, d.step] }))
}
]
};
六、对比分析输出要点(使用上述可视化)
七、质量与风险控制
八、需要的数据补充清单
如提供原始聚合数据(按 period×channel×step 的人数与转化率),可基于上述方案输出具体图表与结论,并给出显著性标注与贡献拆解结果。
已收到您的需求。当前未见到具体的热力图截图或留存曲线数值。为确保准确性与可复用性,以下提供一套针对“v2.0首页点击与滚动热力图(2024-03-01至03-07)”与“v1.9 vs v2.0 的7日/14日留存(新/老用户分组)”的对比分析框架、可视化规范与判读要点。您可按此框架核对现有可视化并产出结论;如提供图表或汇总数据,我可据此给出定量结论与具体建议。
一、数据与口径核对(分析前务必确认)
二、首页点击与滚动热力图(v2.0,2024-03-01至03-07)
三、留存曲线对比(v1.9 vs v2.0,D7/D14,新/老用户)
四、仪表盘与可视化实现建议
五、输出模板(填写示例占位)
六、所需补充资料(以便给出定量结论)
说明
用一次输入,获得对两张数据可视化图表的专业级对比分析,帮助你更快识别差异与共性、发现趋势与异常、校准指标口径,并给出可落地的可视化优化与业务行动建议。适用于周报复盘、A/B实验评估、版本发布监测、渠道投放对比、地域/人群分层对照等场景,输出结构清晰、结论先行,可直接用于会议汇报、项目决策与跨团队同步。
对比不同时间段折线图与分布图,定位异常波动与根因,输出结构化分析与行动建议。
对比活动前后漏斗与转化图,找出流失节点,指导预算分配与页面优化方案。
对比新旧版本使用热力与留存曲线,评估改版成效,确定下个迭代优先级。
将模板生成的提示词复制粘贴到您常用的 Chat 应用(如 ChatGPT、Claude 等),即可直接对话使用,无需额外开发。适合个人快速体验和轻量使用场景。
把提示词模板转化为 API,您的程序可任意修改模板参数,通过接口直接调用,轻松实现自动化与批量处理。适合开发者集成与业务系统嵌入。
在 MCP client 中配置对应的 server 地址,让您的 AI 应用自动调用提示词模板。适合高级用户和团队协作,让提示词在不同 AI 工具间无缝衔接。
免费获取高级提示词-优惠即将到期