举个栗子!Tableau 技巧(260):文本表中省市县数据的灵活逐级下钻「方法二」
之前,我们分享过 🌰:实现地图中的省市县逐级下钻。有数据粉提出问题:如果不是地图,而是文本表,有什么办法可以像这样,实现地理位置逐级下钻呢?
文本表也是可以的。但是,如果不想用 Tableau 自带分层结构的统一展开或收起,就需要另辟蹊径了。
那么,如何在文本表中实现地理位置的灵活逐级下钻呢?常用的方法有两种。
方法一

今天,再来分享第二种方法:使用集操作+参数操作(如下图)。

本期《举个栗子》,我们要给大家分享的 Tableau 技巧是:文本表中省市县数据的灵活逐级下钻「方法二」。
为方便学习,栗子使用 Tableau 自带的“示例-超市”数据源,掌握栗子方法后,数据粉可尝试使用其他数据源实现。懒癌患者可通过以下链接获取栗子数据源:
https://www.dkmeco.com/community/example/detail-711
具体步骤如下:
1
创建参数和集
打开 Tableau Desktop,连接“示例-超市”数据源。先创建一个参数:选择工作表参数,该参数的数据类型选择为“字符串”,允许的值选择为“列表”,在值列表中填写相应的值。
在“数据”窗格中,依次右键单击“地区”,“省份”,“城市”三个字段,下拉菜单均选择:创建-集。创建三个集:2.1地区集、2.2省份集、2.3城市集。
注意:创建这三个集时,都需要勾选其中的任何一个有从属关系的地区或省份或城市。



2
创建计算字段
接着,依次创建四个布尔类型计算字段:2.4设置地区、2.5设置省份、2.6设置城市、2.7设置细分,以便后面用于筛选器进行区分。
➤ 计算字段:2.4设置地区,键入函数
if [选择工作表参数] = ‘地区’ then
TRUE
else
[2.1地区集]
END
➤ 计算字段:2.5设置省份,键入函数
if [选择工作表参数] = ‘省份’ then
[2.1地区集]
elseif [选择工作表参数] = ‘城市’ then
[2.2省份集]
else FALSE
END
➤ 计算字段:2.6设置城市,键入函数
if [选择工作表参数] = ‘城市’ then
[2.2省份集]
elseif [选择工作表参数] = ‘细分’ then
[2.3城市集]
else FALSE
END
➤ 计算字段:2.7设置细分,键入函数
[选择工作表参数] = ‘细分’

再依次创建四个字符串类型计算字段:2.8跳转地区、2.9跳转省份、3.0跳转城市、3.1跳转细分,以便后面在参数操作中进行运用。
➤ 计算字段:2.8跳转地区,键入函数
‘地区’
➤ 计算字段:2.9跳转省份,键入函数
‘省份’
➤ 计算字段:3.0跳转城市,键入函数
‘城市’
➤ 计算字段:3.1跳转细分,键入函数
‘细分’

3
创建工作表
➤ 工作表:地区
在“数据”窗格,右键单击“选择工作表参数”,下拉菜单选择:显示参数,并将参数选为:地区;再分别将“地区”字段和“度量名称”依次拖放至行和列。
将“度量值”拖放至“标记”卡中的文本中,保留需要的度量字段,再将“2.9跳转省份”字段拖放至“标记”卡中的详细信息中;
再将“2.4设置地区”字段拖放至“筛选器”卡中,弹窗中勾选:真。

➤ 工作表:省份
新建工作表,跟前面一样,先将“选择工作表参数”参数显示出来,并将参数选为:省份。再分别将“省/自治区”字段和“度量名称”依次拖放至行和列中。
再将“度量值”拖入“标记”卡的文本中,保留需要的度量字段;将“3.0跳转城市”字段拖放至“标记”卡的详细信息中;
将“2.5设置省份”字段拖放至“筛选器”卡中,弹窗中也勾选:真。

➤ 工作表:城市
新建工作表,跟前面一样,先将“选择工作表参数”参数显示出来,并将参数选为:城市。再将“城市”字段和“度量名称”依次拖放至行和列。
然后,将“度量值”拖入“标记”卡的文本中,保留需要的度量字段;将“3.1跳转细分”字段拖放至“标记”卡的详细信息中。
将“2.6设置城市”字段拖放至“筛选器”卡中,弹窗中勾选:真。
➤ 工作表:细分
新建工作表,跟前面一样,先将“选择工作表参数”参数显示出来,并将参数选为:细分。再将“细分”字段和“度量名称”依次拖放至行和列中。
然后,将“度量值”拖入“标记”卡的文本中,保留需要的度量字段;将“2.8跳转地区”字段拖放至“标记”卡的详细信息中;
将“2.7设置细分”字段拖放至“筛选器”卡中,弹窗中勾选:真。
➤ 工作表:返回地区
新建工作表,双击列的空白处,键入“min(1)”后形成一个胶囊;
再将“2.8跳转地区”字段拖放至“标记”卡的文本,并将“标记”卡的标记类型改为:形状,并选择自己喜欢的形状;
然后,隐藏工作表的坐标轴。
4
创建仪表板
新建仪表板,将前面创建的工作表“地区”、“省份”、“城市”、“细分”、“返回地区”拖放至仪表板的视图中。同时,将“选择工作表参数”显示在仪表板顶部,将每个工作表都设置为:整个视图。
5
设置仪表板操作-更改参数
单击顶部菜单栏中的“仪表板”,下拉菜单选择:操作。弹窗中选择:添加操作-更改参数。
在弹出的对话框中,将参数动作命名为:1.1跳转省份。将运行操作方式设为:选择,源工作表选为:地区,将目标参数勾选为:选择工作表参数,将字段勾选为:2.9跳转省份,将聚合选择默认的“无”,清除选定内容将会勾选“保留当前值”。
用相同的步骤,分别创建“1.2跳转城市”,“1.3跳转细分”和“1.4返回地区”参数操作。



6
设置仪表板操作-更改集值
再单击顶部菜单栏中的“仪表板”,下拉菜单选择:操作。弹窗中选择:添加操作-更改集值。
在弹出的对话框中,将集动作命名为:1.5更改地区集。将运行操作方式设为:选择,将源工作表选为:地区,将目标集勾选为:2.1地区集,将运行操作将会勾选为:为集分配值,将清除选定内容将会勾选为:保留集值。

用相同的步骤,分别创建“1.6更改省份集”和“1.7更改城市集”更改集值操作。

最后,将仪表板视图右上角的“选择工作表参数”切换为:地区,就 OK 了!
此时,文本表可以从“地区”到“省份”再到“城市”最后到“细分”一层一层的下钻,下钻到省份或城市或细分后,再单击顶部的“返回地区”按钮或者将“选择工作表参数”切换为“地区”便可以恢复到初始状态。
本期的 Tableau 技巧,你 Get 到了吗?
下一期,再见~

文章部分信息来源于网络,如有侵权请告知
相关文章:
举个栗子!Tableau 技巧(260):文本表中省市县数据的灵活逐级下钻「方法二」
之前,我们分享过 🌰:实现地图中的省市县逐级下钻。有数据粉提出问题:如果不是地图,而是文本表,有什么办法可以像这样,实现地理位置逐级下钻呢? 文本表也是可以的。但是,…...
软著项目推荐 深度学习 opencv python 实现中国交通标志识别
文章目录 0 前言1 yolov5实现中国交通标志检测2.算法原理2.1 算法简介2.2网络架构2.3 关键代码 3 数据集处理3.1 VOC格式介绍3.2 将中国交通标志检测数据集CCTSDB数据转换成VOC数据格式3.3 手动标注数据集 4 模型训练5 实现效果5.1 视频效果 6 最后 0 前言 🔥 优质…...
【Java基础】Java导Excel攻略
💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…...
maven打包可执行jar含依赖lib
修改pom.xml <build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><!-- jdk8可用,其他jdk版本可能需改插件版本 --><version>2.3.7.RE…...
虾皮知虾数据分析软件:优化您的电商经营
在当今竞争激烈的电商市场,了解市场动态、分析竞争对手和产品趋势是成功经营的关键。虾皮知虾数据分析软件是一款强大的工具,为电商卖家提供了全面的数据采集和分析功能。本文将介绍虾皮知虾数据分析软件的特点和功能,以及如何利用它来优化您…...
uniapp开发小程序-如何判断小程序是在手机端还是pc端打开
官方说明 https://developers.weixin.qq.com/miniprogram/dev/devtools/pc-dev.html 小程序如何判断是 PC 平台? 通过 getSystemInfo 官方接口(platform 是 windows) 通过 UA(PC UA 包含 MiniProgramEnv/Windows) …...
7-tcp 三次握手和四次挥手、osi七层协议,哪七层,每层有哪些?tcp和udp的区别?udp用在哪里了?
1 tcp 三次握手和四次挥手 2 osi七层协议,哪七层,每层有哪些 3 tcp和udp的区别?udp用在哪里了? 1 tcp 三次握手和四次挥手 # tcp协议---》处于osi7层协议的传输层,可靠连接,使用三次握手,四次挥…...
DELPHI开发APP回忆录二安卓与pc端路径的选择
路径方法WinAndroidGetHomePathC:\Users\ggggcexx\AppData\Roaming/data/user/0/com.stella.scan/files/GetDocumentsPathC:\Users\ggggcexx\Documents/data/user/0/com.embarcadero.FirstAidExpert_FMX_D11/filesGetSharedDocumentsPathC:\Users\Public\Documents/storage/emu…...
井盖位移传感器怎么监测井盖安全
井盖在城市基础设施建设中扮演着不可或缺的角色,虽然看似并不起眼但确实是城市规划中一个重要的组成部分。在城市规划建设之初都需要首先考虑排水系统的设计,而井盖作为排水系统的一个重要组成部分,一旦出现问题便会造成交通中断或者环境受影…...
从零开始,用Docker-compose打造SkyWalking、Elasticsearch和Spring Cloud的完美融合
🎏:你只管努力,剩下的交给时间 🏠 :小破站 "从零开始,用Docker-compose打造SkyWalking、Elasticsearch和Spring Cloud的完美融合 前言准备工作编写docker-compose.yml文件为什么使用本机ip为什么skywa…...
设计模式——状态模式介绍
状态模式是一种行为设计模式,它允许对象在内部状态改变时改变它的行为。它基于对象的内部状态而改变其行为,看起来好像修改了对象的类。 状态模式的关键组件有三个:上下文(Context)、状态(State)和具体状态(Concrete State)。 下面是一个例…...
Java 多线程之 CAS(Compare and Set),实现无锁优化,自旋锁/乐观锁
文章目录 一、概述二、JDK 的 Unsafe 类三、ABA 问题 一、概述 CAS(Compare and Swap)是一种并发编程中的原子操作(synchronized 也使用了 CAS),用于实现多线程环境下的同步和数据共享。CAS提供了一种高效的并发控制机…...
python之pyqt专栏1-环境搭建
#python pyqt# python:3.11.6 pycharm:PyCharm Community Edition 2023.2.5 pyqt6 python安装 官网下载:Python Releases for Windows | Python.org pycharm社区版安装 官网地址:Download PyCharm: Python IDE for Professional…...
Spring Cloud LoadBalancer 简单介绍与实战
前言 本文为SpringCloud的学习笔记,如有错误,希望各位高手能指出,主要介绍SpringCloudLoadBalancer的基本概念和实战 文章目录 前言什么是LoadBalancer负载均衡分类服务端负载均衡客户端负载均衡服务端负载均衡和客户端负载均衡的优缺点 常见…...
私域流量解决方案分享
...
Scala---WordCount
一、创建Maven项目导入pom.xml文件 安装Maven仓库管理工具,版本要求是3.2版本以上。新建Maven项目,配置pom.xml。导入必要的包。 二、Spark-Scala版本的WordCount 1.val conf new SparkConf() 2.conf.setMaster("local") 3.conf.setAppNam…...
GTC2023全球流量大会蓄势待发,菊风在7B57展位等你!
第六届 GTC 全球流量大会(以下简称 GTC2023)将于12月5日- 6日,在深圳福田会展中心7&8号馆举办。 据悉,本届大会将是历届以来规模最大、参与人数最多、跨境出海资源最丰富的一次行业盛会。7、8 号馆共 15000 平方米&am…...
喜讯!云起无垠成为国家信息安全漏洞库(CNNVD)技术支撑单位
近日,云起无垠凭借其在漏洞挖掘、漏洞检测以及漏洞修复等领域的卓越表现,荣获“国家信息安全漏洞库(CNNVD)技术支撑单位等级证书(三级)”,正式成为CNNVD技术支撑单位。 中国国家信息安全漏洞库&…...
cc linux用root用户执行chmod 777 -R ./提示 Operation not permitted怎么办?
如果你作为 root 用户执行 chmod 777 -R ./ 命令时收到 “Operation not permitted” 错误,可能有几个原因: 不可更改 (Immutable) 文件属性: 文件可能被设置为不可更改。即使是 root 用户也不能修改这些文件的权限。使用 lsattr 命令查看文件…...
scrapy框架流程
1、Scrapy从Spider子类中提取start_url,然后构造为request请求对象 2、将request请求对象传递给爬虫中间件 3、将request请求对象传递给Scrapy引擎(核心代码) 4、将request请求对象传递给调度器(它负责对多个request安排,好比交…...
19c补丁后oracle属主变化,导致不能识别磁盘组
补丁后服务器重启,数据库再次无法启动 ORA01017: invalid username/password; logon denied Oracle 19c 在打上 19.23 或以上补丁版本后,存在与用户组权限相关的问题。具体表现为,Oracle 实例的运行用户(oracle)和集…...
云启出海,智联未来|阿里云网络「企业出海」系列客户沙龙上海站圆满落地
借阿里云中企出海大会的东风,以**「云启出海,智联未来|打造安全可靠的出海云网络引擎」为主题的阿里云企业出海客户沙龙云网络&安全专场于5.28日下午在上海顺利举办,现场吸引了来自携程、小红书、米哈游、哔哩哔哩、波克城市、…...
Java如何权衡是使用无序的数组还是有序的数组
在 Java 中,选择有序数组还是无序数组取决于具体场景的性能需求与操作特点。以下是关键权衡因素及决策指南: ⚖️ 核心权衡维度 维度有序数组无序数组查询性能二分查找 O(log n) ✅线性扫描 O(n) ❌插入/删除需移位维护顺序 O(n) ❌直接操作尾部 O(1) ✅内存开销与无序数组相…...
深入浅出:JavaScript 中的 `window.crypto.getRandomValues()` 方法
深入浅出:JavaScript 中的 window.crypto.getRandomValues() 方法 在现代 Web 开发中,随机数的生成看似简单,却隐藏着许多玄机。无论是生成密码、加密密钥,还是创建安全令牌,随机数的质量直接关系到系统的安全性。Jav…...
家政维修平台实战20:权限设计
目录 1 获取工人信息2 搭建工人入口3 权限判断总结 目前我们已经搭建好了基础的用户体系,主要是分成几个表,用户表我们是记录用户的基础信息,包括手机、昵称、头像。而工人和员工各有各的表。那么就有一个问题,不同的角色…...
多模态大语言模型arxiv论文略读(108)
CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文标题:CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文作者:Sayna Ebrahimi, Sercan O. Arik, Tejas Nama, Tomas Pfister ➡️ 研究机构: Google Cloud AI Re…...
Web 架构之 CDN 加速原理与落地实践
文章目录 一、思维导图二、正文内容(一)CDN 基础概念1. 定义2. 组成部分 (二)CDN 加速原理1. 请求路由2. 内容缓存3. 内容更新 (三)CDN 落地实践1. 选择 CDN 服务商2. 配置 CDN3. 集成到 Web 架构 …...
Android第十三次面试总结(四大 组件基础)
Activity生命周期和四大启动模式详解 一、Activity 生命周期 Activity 的生命周期由一系列回调方法组成,用于管理其创建、可见性、焦点和销毁过程。以下是核心方法及其调用时机: onCreate() 调用时机:Activity 首次创建时调用。…...
基于Java Swing的电子通讯录设计与实现:附系统托盘功能代码详解
JAVASQL电子通讯录带系统托盘 一、系统概述 本电子通讯录系统采用Java Swing开发桌面应用,结合SQLite数据库实现联系人管理功能,并集成系统托盘功能提升用户体验。系统支持联系人的增删改查、分组管理、搜索过滤等功能,同时可以最小化到系统…...
day36-多路IO复用
一、基本概念 (服务器多客户端模型) 定义:单线程或单进程同时监测若干个文件描述符是否可以执行IO操作的能力 作用:应用程序通常需要处理来自多条事件流中的事件,比如我现在用的电脑,需要同时处理键盘鼠标…...
