PowerBI报表制作保姆级实操全流程 :销售异动分析

2022-06-2720:58:42办公软件与工具应用Comments2,709 views字数 5893阅读模式

保姆级的实操教程。跟着操作你能得到一个高频使用的指标拆解(杜邦分析)模板,用于销售异动分析文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

初识PowerBI

打开PowerBI后,我们可以看到丰富的操作分区:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

  • 功能区:类似于Excel的导航栏,有各种功能,包括导入数据
  • (可视化图表区)图表类型、图表设计:有许多内置的图表,以及图表对应的可视化设计区域
  • 数据字段:导入的数据、新建的度量值等数据字段会显示在这里用于与图表交互
  • 功能页切换:在这里切换到不同的功能页面进行报表设计、数据处理、建模。
PowerBI报表制作保姆级实操全流程 :销售异动分析

业务需求

销售额异动原因分析是常见的业务需求场景,为了让运营能自主完成,此次案例借助杜邦分析法实现指标销售额的拆解,并通过同比指标判断异常原因。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

在产品落地层,该BI报表需要便于运营对不同时间段、不同产品类别销售变动进行原因分析。基于该业务需求,形成了下图中的报表设计页面。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

PowerBI报表制作保姆级实操全流程 :销售异动分析为了便于教程中的对应讲解,把画布中的报表设计分成:页面标题区、分析维度区、指标拆解区、经营成效分析区。接下来的内容将逐一完成这些区域的设计。
PowerBI报表制作保姆级实操全流程 :销售异动分析

使用场景

按“以终为始”的落地思维,在开始实现报表之前,需要先对产品最终落地的使用场景进行讨论,才能倒推出所需要的功能、数据。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

按业务需求,报表需要实现按时间维度及产品维度对销售数据进行分析的功能。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

时间维度

如图,在分析维度区中的“分析时间”切片器,筛选2021年1月1日至2021年3月31日。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

指标拆解区和经营成效分析区呈现的销售数据就是2021年1季度、2020年1季度及它们之间的同比。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

其中,产品类别表现中,呈现的是2021年1季度产品类别的销售数据。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

PowerBI报表制作保姆级实操全流程 :销售异动分析

时间×产品维度

如图,在分析维度区中的“分析时间”切片器,筛选2021年1月1日至2021年3月31日,在“产品类别表现”表格中选中办公用品,则指标拆解区和经营成效分析区呈现的就是2021年1季度、2020年1季度的办公用品销售数据及同比。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

其中,产品类别表现中,呈现的是2021年1季度办公用品的销售数据。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

PowerBI报表制作保姆级实操全流程 :销售异动分析

回到落地场景中,业务会结合产品维度进行分析,但是每次操作时应该看哪个产品类别呢?所以,业务还会需要到产品类别的数据表现,来帮助做初步的判断。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

因此,在这里,分析维度区中以”产品类别表现”的表格形式作为产品维度筛选的依据,具体内容是分析产品的销售结构。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

明确了业务需求及最终要交付的报表后,就可以着手开始报表制作。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

接入数据

首先,需要接入业务数据。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

PowerBI提供了丰富的数据源接口,比较常用的是Excel、SQL,可以按需使用。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

PowerBI报表制作保姆级实操全流程 :销售异动分析文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

数据源

在业务需求的讨论中,可以明确所需的业务数据是销售表及产品表。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

产品表Model-DimProduct:用于记录不同产品的数据,例如类别、子类别、产品名称、对应的品牌及标签价。其中,spu可以简单理解为产品型号。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

PowerBI报表制作保姆级实操全流程 :销售异动分析

销售表Model-FactSales:用于记录客户的订单数据,例如订单ID、订单日期、客户ID、订单对应的产品sku(可以简单理解为产品规格)、产品spu、商品件数及订单金额。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

PowerBI报表制作保姆级实操全流程 :销售异动分析

其中,sku是spu是下一级,例如 iphone13 是spu,而不同颜色规格的 iphone 13 black 是sku,还可以是不同容量的 iphone 13 256G。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

新建日期表

对于涉及时间分析的场景,需要新建日期表,通过对日期表中时间字段的筛选,计算不同时间段下的销售指标。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

切换到“数据”功能页,在功能区中找到表工具-新建表功能。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

PowerBI报表制作保姆级实操全流程 :销售异动分析

在代码区输入日期表的通用Dax代码,即可。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

日期表 = 
----------------------------------------------------------------
--制作日期表的相关参数,可根据需要修改

VAR YearStart = 2020    //起始年度
VAR YearEnd = 2023     //结束年度

VAR WeekNumberType = 2
VAR WeekDayType = 2       
-----------------------------------------------------------------

RETURN

GENERATE (
    CALENDAR( DATE( YearStart , 1 , 1 ) , DATE( YearEnd , 12 , 31 ) ),
    VAR Year = YEAR ( [Date] )
    VAR Month = MONTH ( [Date] )
    VAR Quarter = QUARTER( [Date] )
    VAR Day = DAY( [Date] )
    VAR YearMonth = Year * 100 + Month
    VAR Weekday = WEEKDAY( [Date] , WeekDayType ) 
    VAR WeekOfYear = WEEKNUM( [Date] , WeekNumberType )
    RETURN ROW (
        "年" , Year ,
        "季" , Quarter ,
        "月" , Month ,
        "日" , Day ,
        "日期编码" , Year * 10000 + Month * 100 + Day
    )
)文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

得到的日期表如图所示。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

PowerBI报表制作保姆级实操全流程 :销售异动分析

数据建模

数据准备好后,切换到“模型”功能页,进行数据建模工作。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

PowerBI报表制作保姆级实操全流程 :销售异动分析

在业务需求中,我们明确了时间、产品类别的分析维度,因此,结合“维度建模”的方法论,需要以日期表、产品表作为维度表,以销售表作为事实表进行分析,使它们之间形成1对多、单向的表间关系,得到的数据模型如下:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

  • 日期表('Model-DimDates'[Date]) → 销售表 ('Model-FactSales'[订单日期])
  • 产品表('Model-DimProduct'[spu]) → 销售表 ('Model-FactSales'[spu])
PowerBI报表制作保姆级实操全流程 :销售异动分析

如何操作?文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

用鼠标把日期表Model-DimDates中的Date字段,拖拽到销售表 Model-FactSales中的订单日期字段位置,如图所示,松开鼠标即可完成关联。同理需要完成销售表和产品表之间的关联。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

PowerBI报表制作保姆级实操全流程 :销售异动分析

新建度量值 | 写Dax

接下来切换到“数据”功能页,开始可视化报表中度量值的准备。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

PowerBI报表制作保姆级实操全流程 :销售异动分析

指标拆解区

该区域是此报表中的核心,涉及的指标及公式:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

  • 销售额 = 订单数 × 客单价
  • 订单数 = 销量 × 连带率
  • 客单价 = 件单价 × 连带率

其中,连带率衡量的是每次客户购买时的平均商品数量。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

接下来逐个分析如何新建度量值。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

本期指标

销售额

销售额可以通过把订单表中的金额做累加实现。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

销售额 = sum('Model-FactSales'[订单金额])文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

如何操作?只需在表工具中,点击“新建度量值”,在代码区输入语句即可。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

PowerBI报表制作保姆级实操全流程 :销售异动分析
PowerBI报表制作保姆级实操全流程 :销售异动分析

订单数

在零售业务中,对订单的处理逻辑需要按日合并,也就是说,假设客户A在2022年6月1日内消费了多笔订单,业务上也认为客户A在2022年6月1日仅消费了一笔。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

因此,统计订单数不能直接使用订单ID,需要重新对每笔订单按客户ID和日期做标记,形式是:客户ID+空格+订单日期,这样,对每个客户同一天的多个消费订单都有相同的订单标记。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

新建列文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

选择销售表Model-FactSales,在功能区-表工具中,选择“新建列"。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

PowerBI报表制作保姆级实操全流程 :销售异动分析
输入订单标记的公式即可。

其中,CONCATENATE是对两个字符串进行拼接,而订单标记有三个字符串,所以应用了两次CONCATENATE。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

订单标记 = CONCATENATE(CONCATENATE('Model-FactSales'[客户 Id], " "), 
                      FORMAT('Model-FactSales'[订单日期],"YYYY-MM-dd"))文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

PowerBI报表制作保姆级实操全流程 :销售异动分析

订单数计算文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

此时,通过对订单表中的订单标记字段进行去重计数,就能得到订单数指标。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

订单数 = DISTINCTCOUNT ( 'Model-FactSales'[订单标记] )文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

客单价

DIVIDE是Dax中的除法函数,利用它,基于前面提及的公式:把销售额除以订单数,即可得到客单价指标。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

客单价 = DIVIDE ( [销售额], [订单数] )文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

销量

对订单表中商品件数进行求和即可得到销量指标。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

销量 = SUM ( 'Model-FactSales'[商品件数] )文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

连带率

基于前面提及的公式:把销量除以订单数,即可得到连带率指标。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

连带率 = DIVIDE ( [销量], [订单数] )文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

件单价

基于前面提及的公式:把销售额除以销量,即可得到件单价指标。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

件单价 = DIVIDE ( [销售额], [销量] )文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

同期指标

利用Calculate+时间智能函数SAMEPERIODLASTYEAR,就可以轻松计算同期数据。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

同期销售额 = CALCULATE([销售额],SAMEPERIODLASTYEAR('Model-DimDates'[date]))
同期订单数 = CALCULATE ( [订单数], SAMEPERIODLASTYEAR('Model-DimDates'[Date] ))
同期客单价 = DIVIDE ( [同期销售额], [同期订单数] )
同期销量 = CALCULATE ( [销量], SAMEPERIODLASTYEAR('Model-DimDates'[Date] ))
同期连带率 = DIVIDE ( [同期销量], [同期订单数] )
同期件单价 = DIVIDE ( [同期销售额], [同期销量] )文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

同比指标

同比的计算公式,例如销售额同比 = (本期销售额 - 同期销售额) / 同期销售额,经过通分可以优化成:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

销售额同比 = 本期销售额 / 同期销售额 -1文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

基于此,就可以得到如下同比指标的计算公式:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

销售额同比 = DIVIDE ( [销售额], [同期销售额] ) - 1
订单数同比 = DIVIDE ( [订单数], [同期订单数] ) - 1
客单价同比 = DIVIDE ( [客单价], [同期客单价] ) - 1
销量同比 = DIVIDE ( [销量], [同期销量] ) - 1
连带率同比 = DIVIDE ( [连带率], [同期连带率] ) - 1
件单价同比 = DIVIDE ( [件单价], [同期件单价] ) - 1文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

经营成效分析区

基于公式,累计客单价 = 销售额 / 人数,就可得到度量值计算语句:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

人数 = DISTINCTCOUNT ( 'Model-factsales'[客户 Id] )
累计客单价 = DIVIDE ( [销售额], [人数] )文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

其中,客单价与累计客单价指标的区别在于,前者是每个客户单次订单的平均金额,而后者是每个客户多次订单的累计金额。客单价的使用场景可以是每次活动前的选品,而累计客单价则衡量客户的消费能力。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

分析维度区

分析维度区的作用在于选择不同维度进行筛选计算,其中,时间维度可以直接通过日期表中的字段进行筛选,不需要新建度量值。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

而产品类别维度其实一般来说也是直接使用产品表的字段即可,但是为了展示通过表格筛选数据的效果,同时,也是为业务提供更好的报表使用体验,这里也新建了产品相关的度量值。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

销量占比

在产品类别表现表中,同步销量占比来分析产品类别的销售结构。这里的计算逻辑稍微更复杂了一些。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

总体的公式:销量占比 = 销量 / 总销量文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

其中,为了消除上下文的限制,使用ALL函数选择了所有的产品,这样放到产品类别表现中,得到的结果就是某个类别的销量,占所有类别销量的比例。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

销量占比 = 
DIVIDE ( [销量], CALCULATE ( [销量], ALL ( 'Model-DimProduct' ) ) )文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

销量占比同比

结构分析中,同样需要通过同比看销量结构的变化。而比例、占比、百分比类型的指标做同比时,一般不说提升/降低了百分之多少,而是通过提升/降低了多少个百分点来表示。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

例如2022年办公用品销量占比20%,而2021年办公用品销量占比10%,一般不说2022年办公用品销量占比同比提升100%,而是说2022年办公用品销量占比同比提升了10个百分点。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

在介绍PowerBI核心概念的文章中,我们说“利用SQL的思维去看PowerBI有助于我们理解它的运行逻辑”,在这里就得到了印证:回到度量值的语句中,要展示多少个百分点的语句逻辑其实跟SQL中相似,例如SQL写百分数的语句是:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

SELECT CONCAT(CAST(ROUND((3/21)*100,2) AS CHAR),'%') AS '百分比' FROM TABLE文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

在PowerBI中,写销量占比同比需要先用FORMAT函数对计算结果进行格式化,再利用CONCATENATE 将数字结果和单位“个百分点”拼接起来。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

销量占比同比 = CONCATENATE ( FORMAT ( ( [销量占比] - [同期销量占比] ) * 100, "0.0" ),"个百分点" )文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

至此,我们就完成了所有度量值的建立。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

数据可视化

接下来切换到“报表”功能页,开始可视化报表的操作。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

PowerBI报表制作保姆级实操全流程 :销售异动分析

指标拆解区&页面标题区

新建卡片

这里的报表指标主要以“卡片”的形式实现。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

从可视化-图表类型中,找到“卡片图”,然后把“销售额”指标拖拽到卡片图的“字段”位置即可。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

同样的原理,新建所有需要的卡片。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

PowerBI报表制作保姆级实操全流程 :销售异动分析

调整格式

新建图表后,读者会发现新建的图表和笔者的样子不一致。那是因为,我已对图表进行了格式设计,以优化业务使用时的可视体验。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

如何做呢?点击需要调整的图表,在图表设计区域,进入格式栏。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

里面可以对图表进行不同的可视化设计,例如把边框去掉、调整数据标签中的字体类型及大小,就能得到如图中“人数同比”的卡片样式。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

PowerBI报表制作保姆级实操全流程 :销售异动分析

分析维度区

时间维度

日期的筛选是通过切片器实现的。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

在可视化-图表类型中找到切片器,拖拽到画布中,把日期表Model-DimDates中的Date拖拽到“字段”中即可。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

PowerBI报表制作保姆级实操全流程 :销售异动分析

产品维度

产品类别表现是一个表格,按如图的顺序把表格字段、及度量值拖拽到“值”的位置即可。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

PowerBI报表制作保姆级实操全流程 :销售异动分析

页面标题区

最后,作为完整的分析报表,需要有标题。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

导航背景

在功能区找到形状-矩形,插入后调整格式中的填充等设置即可。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

PowerBI报表制作保姆级实操全流程 :销售异动分析

标题|文本框

接着,在功能区相同的位置找到文本框,插入、填写标题后对格式进行调整即可。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

PowerBI报表制作保姆级实操全流程 :销售异动分析

落地交付

至此,我们就完成了报表页面的制作,效果如图所示。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

PowerBI报表制作保姆级实操全流程 :销售异动分析文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

报表更新

最后留下一个小课题需要你去探索:报表如何实现更新?文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

提示:尝试先把数据源手动做修改,例如在Excel或者SQL上修改订单金额,然后回到PowerBI,在功能区找到“刷新”,点击一下,看看数据是不是都更新了呢?文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

PowerBI报表制作保姆级实操全流程 :销售异动分析文章源自菜鸟学院-https://www.cainiaoxueyuan.com/office/24466.html

  • 本站内容整理自互联网,仅提供信息存储空间服务,以方便学习之用。如对文章、图片、字体等版权有疑问,请在下方留言,管理员看到后,将第一时间进行处理。
  • 转载请务必保留本文链接:https://www.cainiaoxueyuan.com/office/24466.html

Comment

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定