Power BI学习(数据可视化)

另一个也可以的工具是:Tableau

还有一个是:神策,主要是用于互联网的app的数据埋点

数据分析的过程:

数据源--数据清洗(power query)-构建指标 新建度量值(power pivot)-可视化(power view)-报表完成


我使用的PowerBI版本

一 获取数据

1.连接MySQL数据库

如果要连接MySQL,那么在MySQL安装路径下要安装mysql-connect-net,(我是本地电脑,如果数据库在服务端,那么需要放在服务端)下载地址MySQL :: Download MySQL Connector/NET (Archived Versions)

双击安装后

powerBI主页--获取数据--更多--数据库--MySQL数据库

输入数据库和用户后,就可以获取数据库的数据了

2.导入execl数据

导入后,可以查看表之间的关系

二 操作数据(数据清洗)

主页--转换数据--转换数据

打开的是Power Query编辑器

可以编辑数据的类型,行列转换,增删列,提取,分组等操作

设置完即可"关闭并应用"

三 数据可视化

下面的新建列操作是数据建模的一部分:

在数据页面,新建一个某几列数据合在一起计算的列

选择表,右键--新建列--输入公式--确认

1. 地图

比如:查看门店分布及销售情况

1)插入--新建视觉对象

2)对象可以拉到合适的位置。然后,选择对象 --选择"可视化"的"地图"

3)将数据表中的门店的国家字段拉入地图中

把销售额也拉入地图中,最后效果如下:

然后点击上图的"焦点模式"模式

2.着色地图

1.新建视觉对象

2.选择"着色地图"

3)拉入国家和销售额

3. 柱形图、饼状图

4. 矩阵(透视表)

不同产品在不同国家的销售额

设置视觉对象格式,可以优化透视表

美化后效果:(若设置字体大小,搜索"大小",然后进行设置)

5.词云

获取更多视觉对象--word cloud

根据自己的需要进行优化

6.雷达图

获取更多视觉对象--Radar Chart

四 数据建模

(1)管理关系

可以删掉默认的关系,新建自己的关系

(2)新建表

如果要新建表,不要直接用"新建表"的功能,而是通过空白查询的方式(主页--获取数据--空白查询--输入数据--添加表名--确定)

以下是新建一张名称为"度量值表"的表(为了方便下面第(4)步的操作,所以取名"度量值表",也可以根据自己的需要命名)

创建完记得"关闭并应用"

然后,在数据中可查看到新建的表

(3)新建列

最好是用新建度量值,而不用新建列(列会占内存,度量值不会)

(4)新建度量值

常用函数

a.迭代函数

|----------------------|---------------------|
| 函数 | 作用 |
| SUMX('表',算术表达式) | 求和 |
| AVERAGE('表',算术表达式) | 平均值 |
| AVERAGEX('表',算术表达式) | 算术平均值 |
| MAXX('表',算术表达式) | 最大值 |
| MINX('表',算术表达式) | 最小值 |
| COUNTX('表',算术表达式) | 记录数 |
| COUNTAX函数('表',算术表达式) | 计算列中单元格不为空的数目 |
| PRODUCTX('表',算术表达式) | PRODUCTX('表',算术表达式) |

b. 计算函数

FILTER 的表,必须是维度表,唯一表。

Filter 常用方法:

1.搭配Calculate

Calculate(表达式(度量值),Filter('表名',筛选条件))

在Calculate函数中的直接筛选条件里,我们只能输入:

'表'[列]= 固定值 或'表列1<>固定值

'表'[列]>= 固定值或'表'[列]<=固定值'表[列]>固定值或'表[列]<固定值

但是遇到如下情况,就要使用Filter函数

列\]=\[度量值\]、\[列\]=公式、\[列\]=\[列

度量值\]=\[度量值\]、\[度量值\]=公式、\[度量值\]=固定值 * #### 运用 ##### \<1\> 新建度量表 > 为了统一管理度量值,可以新建一张"度量值表",根据上面(2)操作中的方法 比如要计算store_cost的平均值,那么就新建一个度量值(表工具--新建度量值)。 ![](https://file.jishuzhan.net/article/1770621088074567682/8c889b6c325658afe3be29c29b407f85.webp) ##### \<2\> 使用AVERAGE函数(平均值) 点击"度量值表",右键"新建度量值" ![](https://file.jishuzhan.net/article/1770621088074567682/024d086f3ac8c62b7c71ad388b2624e0.webp) ![](https://file.jishuzhan.net/article/1770621088074567682/b0ef922e4fd92138da701069f675ef46.webp) ![](https://file.jishuzhan.net/article/1770621088074567682/1cc0f2e4dd57fd666d365c7057651597.webp) store_cost平均值 = AVERAGE('mayfood sales_fact_1998'[store_cost]) 注意:这时候查看度量值时,页面不会有任何的显示 ![](https://file.jishuzhan.net/article/1770621088074567682/440555c2012c4e8e83717d2a9f31a68b.webp) 在报表试图中,新建视觉对象,选择"表格",拉入度量值,就可以看出结果 ![](https://file.jishuzhan.net/article/1770621088074567682/85daf045ca82ec2f65fc970700f3d443.webp) 增加门店Id维度 ![](https://file.jishuzhan.net/article/1770621088074567682/129a4dacc3d31881fc69265e96c7bfd3.webp) ##### \<3\> 使用Calculate函数(条件语句) 比如筛选store_cost大于其平均值的数据,并对其进行平均值计算 ![](https://file.jishuzhan.net/article/1770621088074567682/3687cb9c1fe2ceff2b24377d77185905.webp) 同样使用度量值 步骤一:筛选store_cost大于其平均值的数据 > Filter('表名',筛选条件) FILTER('mayfood sales_fact_1998','mayfood sales_fact_1998'[store_cost]>=AVERAGE('mayfood sales_fact_1998'[store_cost])) 步骤二: 使用Calculate函数 > Calculate(表达式(度量值),Filter('表名',筛选条件)) store_cost大于平均值 = CALCULATE(AVERAGE('mayfood sales_fact_1998'[store_cost]),FILTER('mayfood sales_fact_1998','mayfood sales_fact_1998'[store_cost]>=AVERAGE('mayfood sales_fact_1998'[store_cost]))) ![](https://file.jishuzhan.net/article/1770621088074567682/22ffc6e0dd4fec83f664c35965215dc3.webp) ![](https://file.jishuzhan.net/article/1770621088074567682/c0cc8218e3909f9c29b2d73f13f6fa9f.webp) 增加城市维度 ![](https://file.jishuzhan.net/article/1770621088074567682/fc160b3644fc3d7e3a34e570906f731a.webp) **更多筛选条件** A. 多个筛选条件 = CALCULATE(AVERAGE('mayfood sales_fact_1998'[store_cost]),FILTER('mayfood sales_fact_1998','mayfood sales_fact_1998'[store_cost]>=AVERAGE('mayfood sales_fact_1998'[store_cost])),'mayfood sales_fact_1998'[store_id] = "1") ![](https://file.jishuzhan.net/article/1770621088074567682/80eb8c85cc048c1e1a34a6e518436aca.webp) B. CALCULATE(AVERAGE('mayfood sales_fact_1998'[store_cost]),FILTER('mayfood sales_fact_1998','mayfood sales_fact_1998'[store_cost]>=AVERAGE('mayfood sales_fact_1998'[store_cost])),'mayfood sales_fact_1998'[store_id] in {1,12}) ![](https://file.jishuzhan.net/article/1770621088074567682/da4204483ac4d8aef4c0d9d5d8f4e592.webp) > 如果in{}里面是文本,那么应该加双引号" " ![](https://file.jishuzhan.net/article/1770621088074567682/0f0b1a5f5e256180957cb9e2ee974cc2.webp) C. 如果是排除某几个,则用not ![](https://file.jishuzhan.net/article/1770621088074567682/6a67d57578dd078b090f22230f176277.webp) ![](https://file.jishuzhan.net/article/1770621088074567682/404d4b111a7a6eda93b1e7f011163b64.webp) ### (5)分组 ![](https://file.jishuzhan.net/article/1770621088074567682/35f2c3e2dc9cf14b228d072a0380f211.webp) ![](https://file.jishuzhan.net/article/1770621088074567682/dc4c9c44d7a7025479f43bc990bd7136.webp) ![](https://file.jishuzhan.net/article/1770621088074567682/7f68e789650baf4e1b8b0e5bad7c2b17.webp) 结果: ![](https://file.jishuzhan.net/article/1770621088074567682/2c9580eb7392ad7b4cd2ae3eafa3e006.webp)

相关推荐
瓶子xf7 天前
PowerBI更新后出现提示,无法正常使用,解决办法
powerbi
包子BI大数据7 天前
1.PowerBi保姆级安装教程
powerbi
瓶子xf14 天前
企业部署Power BI 报表服务器,在第三方系统嵌套该报表服务器,并实现单点登录
powerbi
瓶子xf14 天前
DAX Studio将PowerBI与EXCEL连接
powerbi
瓶子xf14 天前
PowerBI-使用参数动态修改数据源路径
powerbi
Miu(数分版)15 天前
PowerBi中ALLEXCEPT怎么使用?
powerbi
Miu(数分版)15 天前
PowerBi中REMOVEFILTERS怎么使用?
数据分析·产品运营·powerbi
瓶子xf15 天前
PowerBI工具提示-将表悬浮在数据上方
powerbi
瓶子xf17 天前
PowerQuery逆透视将二维表转换为一维表
powerbi
Miu(数分版)19 天前
PowerBi如何制作KPI的总览页?
数据分析·powerbi