图解创建第一个PowerBI报表
PowerBI是微软新一代的交互式报表工具,把相关的静态数据转换为疲厄咐姬酷炫的可视化的,能够根据filter条件,对数据执行动态筛选,从不同的角度和粒度上分析数据。PowerBI主要蕉浔恨缝由两部分组成:PowerBI Desktop和 PowerBI Service,前者供报表开发者使用,用于创建数据模型和报表UI,后者是管理报表和用户权限,以及查看报表(Dashboard)的网页平台(Web Portal)。在开始PowerBI制作报表之前,请先下载PowerBI Desktop桌面开发工具,并注册Power BI service账户,在注册Service账号之后,开发者可以一键发布(Publish)到云端,用户只需要在IE浏览器中打开相应的URL链接,在权限允许的范围内查看报表数据。
认识PowerBI Desktop主界面
1、打开PowerBI Desktop开发工短铘辔嗟具,主界面非常简洁,分布着开发报表常用的多个面板,每个面板都扮演着重要的角色:顶部是主菜单,打开Home淖橐郝芴菜单,通过“Get Data”创建数据连接;通过“Edit Queries”对数据源进行编辑;左边框分别是Report,Data和Relationships,在开发报表时,用于切换视图,在Relationships界面中,管理数据关系,数据建模是报表数据交互式呈现的关键;右边是可视化(Visualizations)和字段(Fields),用于设计报表的UI,系统内置多种可视化组件,能够创建复杂、美观的报表;底部边框是Report的Page,通过“+”号新建Page,PowerBI允许在一个Report中创建多个Page,多个Page共享Data和Relationships,如下图所示:

2、选择需要加载的Sheet,点击Edit,将打开Query Editor对数据进行编辑,在该例中,直接点击“Load”,把Excel中的数据加载到报表中,点击左边的“Data”面板,查看加载的数据,对于数值型数据,前面有累加符号(∑),如下图所示:

4、在菜单Transform中,PowerBI提供丰富的数据转换功能,满足您复杂的分析需求,如下图所示:

6、双击右侧新建的Column,输入同一数据行的Year和MonthName字段值的拼接(Combine),作为一个示例(Example),PowerBI会根据用户输入的结果,自动检测派生列的值,并生成派生列的计算公式,该公式可以在数据表格的上方查看到:Transform:Text.Combine({Text.From([Year])," ",[Month Name]}),如下图所示:

8、添加可视化组件在制作报表之前,必须熟悉报表数据及其数据之间的关系,本例只有一个数据表,所有的数据及其关系都存储在一个数据表中,在Relationships视图中,只有孤零零的一个表。点击“Report”,进入到报表编辑界面,使用Visualizations中可视化组件,设计报表UI,如下图所示:

10、每一个可视化组件(Visualization)都需要设置Fields属性,将数据字段Country从Fields列表中拖曳(Drag)到Field字段中,PowerBI会自动对数据进行去重(Distinct),只显示唯一值,并按照显示值进行排序。Field右边是一个刷子的图形,用于改变可视化组件的显示属性,读者可以尝试着修改,以定制数据的UI显示效果,如下图所示:

12、对Slicer的显示进行排序PowerBI支持数据值的排序,在排序时,可视化组件根据排序值(Sort)执行屡郭瓜开排序操作,在相应的顺序位置上呈现数据的显示值(Display),因此,排序操作会使用到排序列(Sort By Column)和显示列(Display By Column),默认情况下,显示列就是排序列;用户可以在“Modeling”菜单中修改默认的排序行为,组件在显示数据列Column1的数据时,按照另外一个数据列Column2的值的顺序。在右边框的Fields中选择排序的显示列,在“Modeling”菜单中,选择“Sort By Column”,默认的排序列是显示列,可以选择其他数据列作为排序列,如下图所示:

14、使用Stacked column Chart可视化组件分组显式报表数据,如图,设置Axis属性为YearMonth,Value数据设置为Profit,Legend属性设置为Product,Legend属性的作用是再次分组,本例设置Legend属性为Product,这意味着,当Axis属性为某一个月(Year Month)时,PowerBI按照Product对Value进行分组,分别设置各个Product所占的利润(Value属性是Profit),如下图所示:

15、该可视化组件的数据呈现并不完美,因为,底部的YearMonth不是按照自然月进行排序的,而是按照字符的顺序进行排序,为了修改这个“瑕疵”,必须改变组件默认的排序行为,使其按照排序列的值进行排序,由于数据表中有Date字段,可以按照Date字段排序,而显示的字段是YearMonth。实现的步骤非常简单,分两步:Step1:在右边Fields列表中选中YearMonth字段,Step2:打开菜单“Modeling”,点击“Sort by Column”,默认的排序字段是YearMonth,把排序列选中为Date字段,如下图所示:
