举个栗子!Tableau 技巧(256):灵活折叠文本表的多级数据行

news2024/11/14 20:41:44

通常,Tableau 默认的图表分层结构是统一打开或关上,有什么办法可以按需选择展开或折叠?如下示例:单击“+”展开层级,单击“-“收起层级。请添加图片描述

可以试试集操作!今天的栗子,就来分享具体实现方法吧~

在这里插入图片描述

本期《举个栗子》,我们要给大家分享的 Tableau 技巧是:灵活折叠文本表的多级数据行。

为方便学习,栗子使用自拟的有五个层级的数据(如下图),掌握栗子方法后,数据粉可尝试使用其他数据源实现。懒癌患者可通过以下链接获取栗子数据源:
https://www.dkmeco.com/community/example/detail-700

请添加图片描述

具体步骤如下:

1、创建集

打开 Tableau Desktop,连接栗子数据源,新建工作表。首先,需要创建集:二级科目集、三级科目集。

右键单击“数据”窗格中的"二级科目"字段,下拉菜单选择:创建-集。如下图所示,弹窗中勾选所需的二级科目,单击:确定。

请添加图片描述

按照上述步骤,再创建:三级科目 集,弹窗中勾选:A11000、B10000、C12100、C12200。

图片

2、创建工作表:明细表

➤ 将工作表命名为:明细表。将字段“一级科目”、“二级科目”、“三级科目”、“科目名称”拖放至行;将字段“度量名称”拖放至列,将字段“度量值”拖放至“标记”卡的文本中,移除“度量值”卡中不需要的度量胶囊。完成后的效果如下图:

图片

➤ 创建计算字段:展示名称,用于更好的区分层级关系。键入函数

IF [科目级别]=1 THEN [科目名称]
ELSEIF [科目级别]=2 THEN ’ '+[科目名称]
ELSEIF [科目级别]=3 THEN ’ '+[科目名称]
END

图片

在“数据”窗格中,右键单击字段“科目级别”,下拉菜单选择:转换为维度。然后,将字段“展示名称”和“科目级别”拖放至行。

分别右键单击行上的“一级科目”、“二级科目”、“三级科目”、“科目名称”、“科目级别”胶囊,下拉菜单选择:隐藏标题。

图片

3、创建计算字段

➤ 创建计算字段:筛选,键入函数

[科目级别]=1
OR
[科目级别]=2
OR
([科目级别]=3 AND [二级科目 集])

图片

将计算字段“筛选”拖放至明细表的“筛选器”卡中,弹窗中勾选:真。可以发现,有些“科目名称”被筛选隐藏掉了。

图片

接下来,就需要创建“+“和”-“符号,用于展开或者收起数据行。

➤ 创建计算字段:-(2~3),键入函数

IF ATTR([科目级别])=1 OR ATTR([科目级别])=5 THEN ‘’
ELSEIF SUM(IF [二级科目 集]=TRUE THEN 1 ELSE 0 END)!=0 AND MIN({ FIXED [二级科目]:COUNTD([三级科目])})!=1 AND ATTR([科目级别])=2 THEN ‘-’
ELSE ‘’ END

在这里插入图片描述

➤ 创建计算字段:+(2~3),键入函数

IF ATTR([科目级别])=1 OR ATTR([科目级别])=5 THEN ‘’
ELSEIF SUM(IF [二级科目 集]=TRUE THEN 1 ELSE 0 END)=0 AND MIN({ FIXED [二级科目]:COUNTD([三级科目])})!=1 THEN ‘+’
ELSE ‘’ END

图片

Tips:加减号是写逻辑判断一下符号的变化,展开和收起主要是用集操作完成的,但是一个工作表对于同一个集,不能既添加值又移除值,所以得用不同的工作表来做。

然后,对文本表做一些格式设置。在本栗中,需将字段字体设置为:微软雅黑 9 号,将表格行标题的阴影颜色设置为:#ffc994,并隐藏“展示名称”的行字段标签。

图片

设置完成后的明细表如下:

图片

4、创建工作表:展开和收起

➤ 新建工作表:+(2~3展开)。双击列上空白处,键入:‘’,然后回车。

将“一级科目”、“二级科目”、“三级科目”、“+(23)”、“科目名称”、“展示名称”、“科目级别”拖放至行。除了“+(23)”胶囊外,其他胶囊都需隐藏标题。

将”度量名称”拖放至“筛选器”卡,弹窗直接单击:确认。将字段“筛选”拖放至“筛选器”卡,弹窗勾选:真。

图片

分别右键单击视图中的 +(2~3)和 ‘’,选择隐藏字段标签。

图片

接下来,优化文本表格式设置。如下图所示,移除文本表的行列分隔线,将工作表的阴影设置为:无;将行标题的阴影颜色设置为:#ffc994。

图片

然后,将“标记”卡的标记类型改为:多边形。完成后的效果如下:

图片

➤ 新建工作表:-(2~3收起)。

具体步骤跟工作表“+(23展开)”一致,只需将行上的“+(23)”字段换成“-(2~3)”即可。

图片

5、创建仪表板

➤ 新建仪表板:科目。

将一个“平铺”的“水平容器”拖放至仪表板视图中,再将工作表“明细表”拖放至该“水平容器”中, 设置工作表为“适合宽度”,将“明细表”和“水平容器”及“平铺容器”的内外边距设置为:0。

图片

接着,将一个“浮动”的“水平容器”拖放至仪表板视图中,叠放在刚刚的容器之上。切换平铺模式,先后将工作表“+(23)展开”和“-(23)收起”拖放至该水平容器中,实现左右布局。

隐藏两个工作表的标题,统一宽度和高度:20像素、1100像素;并将它们都设置为:适合宽度。然后,将该水平容器和两个工作表的内外边距都设置为:0。

图片

浮动水平容器位置根据“明细表”的位置来设定,只要将前面的“+/-”和科目名称对应上即可。

图片

6、创建集操作

单击顶部菜单栏“仪表板”,下拉菜单选择:操作。在弹窗中选择:添加动作-更改集值。
图片

如下图步骤添加集动作:

➤ 集动作:二级科目-展开

图片

➤ 集动作:二级科目-收起

图片

设置完成后,就完成了我们需要的呈现。试试看,用鼠标单击“+”和“-”来展开和收起下级数据行吧!

请添加图片描述

本期的 Tableau 技巧,你 Get 到了吗?
下一期,再见~
在这里插入图片描述

文章部分信息来源于网络,如有侵权请告知

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

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

相关文章

解读Spring的context:property-placeholder

在spring中&#xff0c;如果要给程序定义一些参数&#xff0c;可以放在application.properties中&#xff0c;通过<context:property-placeholder>加载这个属性文件&#xff0c;然后就可以通过value给我们的变量自动赋值&#xff0c;如果你们的程序可能运行在多个环境中&…

什么是头脑风暴法,有哪些原则?

1. 什么是头脑风暴法&#xff1f; 头脑风暴法&#xff08;Brainstorming&#xff09;是一种用于创造性思维和问题解决的方法。它旨在通过集体讨论和思维碰撞&#xff0c;激发团队成员的创造力和想象力&#xff0c;从而产生新的创意和解决方案。 在头脑风暴会议中&#xff…

数据结构 10-排序4 统计工龄 桶排序/计数排序(C语言)

给定公司名员工的工龄&#xff0c;要求按工龄增序输出每个工龄段有多少员工。 输入格式: 输入首先给出正整数&#xff08;≤&#xff09;&#xff0c;即员工总人数&#xff1b;随后给出个整数&#xff0c;即每个员工的工龄&#xff0c;范围在[0, 50]。 输出格式: 按工龄的递…

【福建事业单位-推理判断】01图形推理(位置,样式、属性、特殊)

【福建事业单位-推理判断】01图形推理 一、位置规律&#xff08;&#xff08;元素组成相同&#xff09;&#xff09;1.1平移旋转翻转1.1.1先判定方向&#xff0c;再确定路径1.1.2分内外圈走 1.2 旋转1.3翻转左右翻只有左右变&#xff0c;上下翻只有上下变&#xff0c;旋转180全…

真的不想知道如何进行语音翻译才简单吗

郑希&#xff1a;嘿&#xff0c;王浩&#xff01;我听说你最近去了日本旅游&#xff0c;怎么样&#xff1f;体验如何&#xff1f; 王浩&#xff1a;哈哈&#xff0c;太棒了&#xff01;日本真是一个充满魅力的国家。不过&#xff0c;要说令我惊喜的还是语音翻译技术&#xff0…

大同市副市长孟维君赴大同互联网职业技术学院指导建设工作

8月2日&#xff0c;大同市副市长孟维君一行莅临大同互联网职业技术学院&#xff08;以下简称&#xff1a;大同互联网学院&#xff09;&#xff0c;对学院的建设工作进行了重要指导。孟维君副市长深入施工现场&#xff0c;详细了解了项目施工的进展情况&#xff0c;并提出三点重…

【LeetCode-简单】剑指 Offer 18. 删除链表的节点(详解)

题目 定单向链表的头指针和一个要删除的节点的值&#xff0c;定义一个函数删除该节点。 返回删除后的链表的头节点。 注意&#xff1a;此题对比原题有改动 题目地址&#xff1a;剑指 Offer 18. 删除链表的节点 - 力扣&#xff08;LeetCode&#xff09; 方法 删除一个节点…

初始创建一个apex应用程序

在应用程序构建器 点击创建选择新建应用程序你只需要填写你应用程序的名称然后点击创建应用程序 在工作区页面&#xff0c;点开上方SQL工作室&#xff0c;点击对象浏览器然后你可以在右上角看到一个加号&#xff0c;点开&#xff0c;选“表”起好表名&#xff0c;并写好你需要的…

CPU缓存那些事儿

CPU缓存那些事儿 CPU高速缓存集成于CPU的内部&#xff0c;其是CPU可以高效运行的成分之一&#xff0c;本文围绕下面三个话题来讲解CPU缓存的作用&#xff1a; 为什么需要高速缓存&#xff1f;高速缓存的内部结构是怎样的&#xff1f;如何利用好cache&#xff0c;优化代码执行…

Nacos 抽取公共配置

文章目录 创建一个公共配置文件其他配置文件引用springboot配置文件 创建一个公共配置文件 其他配置文件引用 ${变量} springboot配置文件 spring:cloud:nacos:discovery:server-addr: current.ip:8848namespace: word_register_proconfig:server-addr: current.ip:8848auto-r…

【Valgrind】如何使用Valgrind监控内存

&#x1f449;博__主&#x1f448;&#xff1a;米码收割机 &#x1f449;技__能&#x1f448;&#xff1a;C/Python语言 &#x1f449;公众号&#x1f448;&#xff1a;测试开发自动化【获取源码商业合作】 &#x1f449;荣__誉&#x1f448;&#xff1a;阿里云博客专家博主、5…

FIFO不常规的应用

一、fifo的复位后的满标志位状态 IP中设置方法 1、Block Ram和Distributed Ram 通过设置上图中的值为1&#xff08;默认&#xff09;或者为0&#xff0c;设置full相关信号在复位后的状态。从下表中可以看出对应关系。 2、Bulitin FIFO 该类型下&#xff0c;读写FIFO的位宽一…

【程序崩溃的原因及处理方法】

程序的编写时&#xff0c;可能经常会遇到程序崩溃的现象。一般来说&#xff0c;程序崩溃是由于内存操作不当引发的。但是具体来讲&#xff0c;由哪些原因可以导致程序崩溃呢&#xff1f;以及当程序崩溃时该如何找到错误的位置呢&#xff1f; 1.资源不足&#xff1a;当应用程序…

应用案例|基于3D视觉的高反光金属管件识别系统解决方案

Part.1 项目背景 在现代制造业中&#xff0c;高反光金属管件的生产以及质量的把控是一个重要的挑战。传统的2D视觉系统常常难以准确地检测和识别高反光金属管件&#xff0c;因为它们的表面特征不够明显&#xff0c;容易受到光照和阴影的干扰。为了应对这个问题&#xff0c;基于…

TWS真无线蓝牙耳机哪家好?六款口碑好的TWS真无线蓝牙耳机分享

为了帮助大家在这个充满选择的世界中找到最理想的蓝牙耳机&#xff0c;我们特别为您精心挑选了几款备受赞誉的产品&#xff0c;它们在音质、舒适度、功能和性价比等方面都有出色的表现。在本文中&#xff0c;我们将深入探讨这些蓝牙耳机的特点和优势&#xff0c;帮助您更好地了…

python调用pytorch的clip模型时报错

使用python调用pytorch中的clip模型时报错&#xff1a;AttributeError: partially initialized module ‘clip’ has no attribute ‘load’ (most likely due to a circular import) 目录 现象解决方案一、查看项目中是否有为clip名的文件二、查看clip是否安装成功 现象 clip…

wpf画刷学习1

在这2篇博文有提到wpf画刷&#xff0c; https://blog.csdn.net/bcbobo21cn/article/details/109699703 https://blog.csdn.net/bcbobo21cn/article/details/107133703 下面单独学习一下画刷&#xff1b; wpf有五种画刷&#xff0c;也可以自定义画刷&#xff0c;画刷的基类都…

DDS中间件设计

OpenDDS、FastDDS数据分发服务中间件设计 软件架构 应用层DDS层RTPS层传输层 软件层次 FastDDS整体架构如下&#xff0c;这里可以看到DDS和RTPS的关系。另外缺少一部分IDL&#xff08;统一描述语言&#xff09;&#xff0c;其应该是Pub、Sub的反序列化、序列化工具。 在RT…

根据接口中的数据,循环出多个echarts图表

1.效果图 2.接口数据 3.开发如下 <div class"chart-list"><div v-for"(item,index) in chartData" :key"index" style"margin-top:5px;"><div>{{item.title}}</div><div :id"myChartindex" st…

分布式框架dubbo

1.分布式系统相关概念 1.1基本概念 1.2 集群和分布式 1.3 架构演进 A是一个微服务。ADB是一个组件。A可以java&#xff0c;B可以python实现。 2 dubbo 2.1 概述 2.2 dubbo代码 2.2.1 服务提供者的改造-将项目service层对外发布到dubbo 通过dubbo中的service注解&#xff…