Tableau上面地图与条形图结合_何为计算的详细级别,认识Tableau中的Level of Detail...

何为详细级别

详细级别,英文Level of detail,Tableau用它来描述计算发生的级别,或者说计算在哪个层级发生。由于BI工具的相似性,在Power BI里也可以用类似的思想对计算进行描述,但Power BI并没有与之对应的专门的词汇。不过,理解详细级别对理解Power BI的计算仍然很有帮助,本文以Power BI为例介绍Tableau中的详细级别和详细级别表达式所传递的思想,理解它可以帮助你加深对BI工具计算过程的理解。

详细级别用来描述计算在哪个级别发生,最常见的两种详细级别是:
  • Row Level of detail 行详细级别
  • Visual Level of detail 视觉详细级别

行详细级别

行详细级别的计算发生在数据源所在表的每一行,并且不进行聚合运算。一个典型的行级别运算可以表示为下面的计算列:
Sales by row = SuperStore[Unit Price]*SuperStore[Quantity]
公式在Superstore的每一行计算单价和数量的乘积,得到每行的销售额,保存在一个新的列中。因为计算发生在最底层的明细级别,所以行详细级别的计算粒度最高,聚合度最低(没有聚合)。在DAX中,我们称之为受行上下文筛选的计算。需要注意的是,并不是所有在计算列进行的运算都是行级别运算,比如这个公式:
Sum of Sales = SUM(SuperStore[Sales])
聚合函数SUM忽略行上下文,所以公式得到的是所有销售额的总和,这是一个聚合运算,不是行级别运算。

视觉详细级别

将度量值或计算列拖入画布,视觉级别的计算就发生了。如果把上文定义的SuperStore[sales by row]计算列拖入画布,选择卡片图,结果显示为一个值。视觉详细级别的计算受所有维度筛选器的共同影响,因为本例中没有其他筛选器,所以它不受任何维度的影响,聚合度最高。fe753b692ef4332b553c56542a4a3e2b.png你可以向画布或黄色区域增加筛选器,这将改变视觉详细级别将产品类别加入画布,修改图表类型为条形图,现在[sales by row] 的视图详细级别变为产品类别,即,被来自产品类别的筛选上下文影响。由于我们可以在画布中自由的对维度进行添加和组合,所以视觉详细级别可以有非常多的变化,从聚合度最高的单个值到明细级别,用一张图形象的表示:ad7313cb401242fe09b043fe39d6fe7e.png可以看出,从金字塔的顶端到底端,不同的数据详细级别对应了不同的分析需求。看到这里,你可能会发现一个共性,这些分析都是可以直接通过拖拽的方式生成,这可以回答一些简单问题,但是无法解决稍微复杂一些的问题。比如,按产品类别计算平均销售额很容易,如果我们要在当前视图中查看每个子类别的平均销售额并只显示出最大的那个,就不是那么容易了。原因是虽然图表显示的还是By类别的平均值,但发生计算的级别已经下降到了子类别粒度而不是默认的类别粒度。或者,如果需要按薪酬区间统计人数,由于区间这个维度本身不包含在原始数据中,计算的详细级别也会发生变化。想回答这类问题,DAX给我们提供了一个很好的理论框架和一套函数作为工具,而Tableau借助的是图形用户界面和详细级别表达式(LOD Expression)

详细级别表达式

详细级别表达式从Tableau 9.0开始加入,在Tableau历史上这被视为一次里程碑式的更新。为什么详细级别表达式如此重要?因为它提供了这样一种可能性:允许用户在不修改视图(图表)的情况下,在计算中指定所需的详细级别,聚合度可以高于和低于当前视图使用的详细级别。也就是说你可以独立于图表所使用的详细级别,自定义另外一套详细级别来执行计算。

实现了这一功能,才真正打开了分析复杂问题的大门。以刚才的平均销售额为例,在没有详细级别表达式之前,必须向视图中加入子类别这个维度才能实现,而借助详细级别表达式,就可以将计算发生的级别定义在公式中。73bab2e408b1131b21d5f2cd8217c611.png详细级别表达式的关键字类型一共有三种:EXCLUDE、INCLUDEFIXED,它们以不同的方式改变详细级别的计算范围。

Include:以较低的详细级别进行计算

将计算级别指定为低于视觉级别的维度。上面的例子使用Include将平均值的计算从类别维度下移到了子类别。fe9fc04bda274107a0d52719c4c303ec.png

Exclude:以较高的详细级别进行计算

忽略指定的级别后进行聚合,一个典型场景是计算每个类别占总计的百分比,分母使用Exclude忽略类别筛选,始终返回总计值。

fb1e96b0a19d7b3e2824ccc0d10faa5a.png

Fixed:指定确切的详细级别

FIXED参与的聚合运算只考虑所列出的维度,忽略其他条件。比如当需要从订单表中找出每个顾客的首次交易记录时,就需要使用FIXED. 它可以明确定义计算发生的聚合级别。与 INCLUDE 和 EXCLUDE 不同,该关键字可独立于可视化内容所用的维度之外来实现这一目标。FIXED 表达式结果的粒度可能会比可视化详细级别更低或更高,具体取决于 FIXED维度和可视化详细级别之间的关系。46939157cab0c102e3cf71d5de01d525.png由于FIXED忽略其他筛选的特性,使用它定义的度量可以直接转化为维度,很多用过Tableau的Power BI用户都觉得这种度量转维度的操作十分方便,其实Power BI里完全可以执行类似的操作,只不过目前没有图形界面辅助,手工操作的步骤比较繁琐。以上是关于Tableau详细级别表达式的简要介绍,想了解详细介绍可以参考Tableau的官方文档和白皮书,参考文献的链接在文章末尾列出。

有奖竞猜

各位读者,如果你是Power BI用户,文章到这里并没有结束,还有一个很重要的问题是:如何在Power BI中实现详细级别表达式这三个关键字的功能?

下面我们模拟一个最简单的情形,提出三个问题,请你用DAX给出解法,基于Orders表定义如下三个LOD表达式,请用DAX给出对应的解:
  1. {EXCLUDE [Customer ID] : SUM([Sales])}
  2. {INCLUDE [Customer ID] : SUM([Sales])}
  3. {FIXED [Customer ID] : SUM([Sales])}
注:实际使用中,由于视觉维度的设定和LOD表达式所用列数的不同,以及多层LOD的嵌套,都会使问题更加复杂,各位可以自行探索也可以在文末留言交流,这里只用最简单的情况举例。解决了这个问题,我们就可以开启下一道考验:在Tableau官网上,有这样一篇非常著名的博文,它从易到难介绍了基于详细级别表达式的15个应用案例,这些案例涉及的场景和分析的思路都很有参考价值,并且最终的报告制作也十分用心。如果说详细级别表达式是皇冠,那15个案例就是皇冠上的明珠,下一篇文章我们一起来见证:如何使用Power BI复刻Tableau 15大详细级别表达式案例参考链接:
  1. 了解详细级别表达式白皮书
  2. How Level of Detail Expressions Work in Tableau
  3. Create Level of Detail Expressions in Tableau
  4. What's new in Tableau 9.0? Part 2 – Level of Detail Expressions
  5. 【Tableau】详细级别表达式LOD_详尽入门(1)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/245016.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java 异步读表,Java实现异步回调-Go语言中文社区

回调(callback)在我们做工程过程中经常会使用到,今天想整理一下回调的原理和使用方法。回调的原理可以简单理解为:A发送消息给B,B处理完后告诉A处理结果。再简单点就是A调用B,B调用A。那么是如何实现的呢?一般而言&…

mysql 按时间累计计算_精通MySQL索引背后的数据结构及算法原理

本文以MySQL数据库为研究对象,讨论与数据库索引相关的一些话题。特别需要说明的是,mysql支持诸多存储引擎,而各种存储引擎对索引的支持也各不相同,因此MySQL数据库支持多种索引类型,如BTree索引,哈希索引&a…

matlab数据游标属性设置,将节点属性添加到图论图数据提示

绘制具有数据提示的 GraphPlot 对象创建随机有向图的 GraphPlot 图对象。将额外的节点属性 wifi 添加到该图。rng defaultG digraph(sprandn(20, 20, 0.05));G.Nodes.wifi randi([0 1], 20, 1) 1;h plot(G);向图中添加数据提示。利用数据提示,您能够选择图论图中…

matlab 邻近度 离群点_MATLAB自制迷宫游戏,快来试试吧!

前几天给大家介绍了“一行matlab代码可以做哪些匪夷所思的事情”,今天小编带给大家一款酷炫的私人订制版迷宫游戏。这款迷宫游戏包含以下功能:随机生成迷宫地图通过键盘手动求解生成的迷宫MATLAB自动求解生成的迷宫目前主流的生成迷宫的算法有&#xff1…

matlab中m文件的作用,M文件主要包含()_matlab中m文件的好处

M文件主要包含()答:M函数文件\n\nM命令文件(脚本文件)" src"" style"max-width: 100%; display: inline;">中国大学MOOC: 在缓冲区分析中二次模型的表示的主体对象对临近对象的影响随距离的增大呈线性衰减。答:错巡航速度是…

xcopy复制文件夹及其子文件_嗨学习:如何给电脑中文件夹设置密码

文件夹怎么设置密码,如何给文件夹设置密码?有些重要的文件或比较隐私的文件存放在电脑上,这些文件我们只希望自己能看到并使用,不希望别人访问。那么,最好的办法就是去对这些文件进行加密。 才不怕别人看到自己的隐私,设置密码&a…

php的修改数据库语句怎么写,php的数据库修改语句是什么

php的数据库修改语句是UPDATE,用于更新数据库表中已存在的记录,语法为【UPDATE table_name SET column1value, column2value2,...WHERE some_columnsome 】。本教程操作环境:windows7系统、PHP5.6版,DELL G3电脑。UPDATE 语句用于…

ubuntu20.04中安装划词翻译_教你轻松玩转免安装的网页翻译插件“有道网页翻译2.0”...

大家在日常网页浏览中肯定多多少少都会碰到英文网站,这时候往往需要花费非常多的时候去自行理解,效率低下,又或者借助浏览器自带的翻译功能进行翻译,但又可能遇到翻译不准的情况。现在这个问题可以解决啦!“有道网页翻…

python 主要内容,介绍一些有关python的重要内容

Python的参数传递方式是:位置,默认值,变量参数,关键词参数。传值究竟是函数的值传递还是引用传递,要分情况:不变参数用值传递:像整型和string这样的不变对象是通过拷贝来传递的,因为…

系统业务逻辑书籍_「樊登读书会强推:免费送10本绝密书」彻底改变你的逻辑思维能力...

哈喽~你好我是JS-冰冰今天在星巴克喝咖啡整理了一些巨大价值的绝密资料,从过往在樊登读书会整理的10本彻底改变《逻辑思维能力》的绝密电子书。非常实用,对我的改变和提升非常有帮助,所以想把这份改变命运的绝密大礼包也送给需要的小伙伴~(怎…

饿了么风神登录_海底捞首度登陆第三方外卖!联手饿了么全国配送“小火锅”...

近日,“海底捞”正式联手饿了么推出第三方外卖配送服务。据悉,这是海底捞首次与本地生活服务平台合作推出第三方外卖业务。包括上海、济南、福州、郑州等多个城市的用户登录饿了么平台,下单购买海底捞“小火锅”外送等产品后,便可…

数据相关的在职研究生_南方医科大学2020年招收在职博士研究生导师名单及复试考生名单!...

南方医科大学2020年在职博士研究生入围复试考生名单各位考生:根据我校招收2020年在职博士研究生相关工作规定,现就进入复试考生名单予以公示,请入围复试考生密切关注我校相关复试公告,做好复试准备。南方医科大学招收2020年在职博…

富文本++php+源码,自己实现富文本编辑器

【实例简介】网页中经常需要输入多种资料,自带的TextBox不够用【实例截图】【核心代码】//************************************************************************************//将texttemp内容移入iframeiframeDocument.body.innerHTML parent.document.getE…

gridlayoutmanager 设置间距_不设置主灯的客厅应当如何保证较好的灯光分布?

如果没有从事照明设计的专业人士或者是比较有经验的室内设计师协助业主做决策,个人不太建议普通业主自行设置“无主灯客厅”的灯光分布。在日常设计工作中,如果委托人确已考虑放弃主灯,通常我也会建议业主保留已有的客厅主灯的灯控线路及开关…

Oracle filter 函数,Oracle数据库之SQL单行函数---字符函数续

前一篇博客练习了一些字符函数,之后自己又去下查阅了相关的资料,上一篇博客中还有很多的字符函数没有练习到,这次主要是对上次的一些未用到的字符函数进行一些补充练习。ascii()返回与指定的字符对应的十进制数,若为字符串则返回字符串首字母…

怎么画单极交流放大电路波形图_珠海放大IC怎么样

容抗XC1/2πf c (f表示交流信号的频率,C表示电容容量)电话机中常用电容的种类有电解电容、瓷片电容、贴片电容、独石电容、钽电容和涤纶电容等。集成电路更着重电路的设计和布局布线,芯片更强调电路的集成、生产和封装。而广义的集成电路,当涉…

图片识别不了小程序怎么办_图片转文字【微信小程序】

文字识别小程序在文章的底部直接拉到文章底部就可使用↓↓↓↓↓↓工作中,很多时间需要把纸质文稿上的大段文字变成可编辑文字,有时我们会一个一个文字录入,有时我们可以采用扫描仪,我们也用过扫描全能王APP。这里给大家介绍一种方…

切片器可以设置日期格式?_Power BI 中的切片器

何时使用切片器在要完成以下操作时,切片器非常有用:在报表画布上显示常用或重要的筛选器,用以简化访问。更轻松地查看当前筛选的状态,而无需打开下拉列表。按数据表中不需要的和隐藏的列进行筛选。通过将切片器放置在重要的视觉对…

linux打印jvm内存堆栈_5款强大的JVM 性能调优监控工具

原文链接:www.iteye.com/blog/josh-persistence-2161848现实企业级Java应用开发、维护中,有时候我们会碰到下面这些问题:OutOfMemoryError,内存不足内存泄露线程死锁锁争用(Lock Contention)Java进程消耗CPU过高......这些问题在日…

eclipse的tomcat如何运行自动弹网页_4个国外网页设计网站案例欣赏

原标题:4个国外网页设计网站案例欣赏要想把自己的网站制作得更加美观、吸引人,你需要多参考一些高质量的网站设计案例。今天就给大家看几个比较好的国外网页设计网站,你可以从中学习这些国外网页设计的思路。1.礼盒电商网站如何让自己的网站更…