Tableau:集合及其用法

  Tableau中的“集”为根据某些条件定义的数据子集。 Tableau中可以定义两种类型的“集”:一种是动态集,动态集中的成员会因为基础数据的变化而变化;另一种是固定集:固定集的成员不会因基础数据的变化而改变。

1.动态集
1.1 创建动态集

  以Tableau中自带的【订单-超市】数据为例,针对特定维度“子类别”创建集,具体如下:
在这里插入图片描述
(1) 使用“常规”创建集:使用这种方式,可以显示地将“子类别”中的特定成员加入到“集”中。
在这里插入图片描述
(2) 使用“条件”创建集:判断“子类别”中的每个成员是否满足设定的条件,若满足则加入到集中。
在这里插入图片描述
此时产生集成员对应的SQL伪代码如下:

select 子类别
from (select 子类别,count(订单id) as num
	from 订单-超市
	group by 子类别)a
where num>300

(3) 使用“顶部”创建集:依据给定的条件对“子类别”中的成员进行排序(默认逆序排序,勾选“顶部”时取最大的N个成员,勾选“底部”时取最小的N个成员),并将排在前面的指定数量的成员加入到集中。
在这里插入图片描述
此时对应的SQL伪代码如下:

select 子类别
from (select 子类别,sum(利润) as num1 from 订单-超市 group by 子类别)a
order by num1 desc
limit 10

  “顶部”和“条件”中都可以使用自定义公式创建集。“条件”下的公式计算必须是嵌套了聚合计算的逻辑计算,“顶部”下的公式也必须是聚合计算(如果公式不符合条件,Tableau会给提示)。以下展示的是“条件”下的公式:
在这里插入图片描述

1.2 变动动态集

  动态集中的成员会因基础数据的变化而变比。以上述“条件”中创建的集为例,构建如下工作表,此时“子类别”中除了“桌子”以外的其他成员都在集合中。
在这里插入图片描述
修改数据源筛选器(如下图,在【数据源】页面的右上角)。PS.使用工作表的“筛选器”作数据的筛选对集合中的成员不会有任何变化。
在这里插入图片描述
此时,工作表已经发生了如下图所示变化,此时“子类别”中的所有成员均已不在集合中。
在这里插入图片描述

2.固定集

  固定集的创建可以直接在可视化图形上直接筛选出来,仍然以“子类别”为例,将“子类别”拖拽到【行】中,然后同时选定前4个成员,即可创建固定集。
在这里插入图片描述

3.合并集

  Tableau中除了可以创建固定集和动态集之外,还可以将现有的两个集合进行合并。具体如下:
在这里插入图片描述
两个集合之间可以有多种合并方式,具体如下:
在这里插入图片描述

4.集的使用

  集创建后,可以像普通字段一样使用。在Tableau中,可以使用两种模式使用集:内/外模式、集成员模式。

4.1 “内/外”模式

  “内/外”模式会会见成员分为两类:包含在集内的成员归到“内”中;不在集内的成员归到“外”中。1.2节就是集在这种模式下的使用。不再赘述。

4.2 集成员模式

  在“集成员”模式下,Tableau会自动将筛选器添加到视图中以便仅包含该集的成员。更改1.2节集的使用模式,如下图:
在这里插入图片描述
此时,整个工作表的结果如下:
在这里插入图片描述

5 例子

  如果我们现在想要跟踪2015年买了家具产品和技术产品但没买办公用品的这批客户,他们在2016年作出的利润贡献比2015年增加了多少?这个问题需要先构造一个2015年买过家具产品和技术产品但没买过办公用品的用户的集合。这里使用动态集中的“条件”下的“公式”进行创建,具体如下:
在这里插入图片描述
其判断依据如下:

SUM(IF YEAR([订单日期])=2015 and [类别]='家具' 
    THEN 1 ELSE 0 END)>0 --2015年买过家具产品
AND
SUM(IF YEAR([订单日期])=2015 and [类别]='技术'
    THEN 1 ELSE 0 END)>0 --2015年买过技术产品
AND
SUM(IF YEAR([订单日期])=2015 and [类别]='办公用品'
    THEN 1 ELSE 0 END)=0 --2015年没买过办公用品

  ;下面我们来看一下这一批客户在2015年在各个类别产品上的消费额,依次来验证这一批客户在2015年买了家具和技术产品没有买办公用品。
在这里插入图片描述
从这里就可以看到这一批客户在2015年没有办公用品的消费记录。
  下面我们看一下这一批人在各个年度利润,具体如下:(如果要计算每一年度相比上一年度的利润贡献,可以对【销售额】使用表计算【差异】)。
在这里插入图片描述

参考资料
  1. https://help.tableau.com/current/pro/desktop/zh-cn/sortgroup_sets_create.htm
### Tableau 中的容器概念及其使用方法 #### 什么是容器? 在 Tableau 中,**容器(Container)** 是一种用于组织和布局仪表板对象的强大工具。通过容器,可以更灵活地控制仪表板上的元素排列方式以及它们之间的交互行为。容器的主要作用是将多个图表、过滤器或其他组件组合在一起,形成一个逻辑单元[^1]。 --- #### 容器的类型 Tableau 提供了两种主要类型的容器: 1. **水平容器(Horizontal Container)** - 将对象按水平方向排列。 - 对象会根据可用空间自动调整大小。 - 常用于展示并列的关系图或指标卡。 2. **垂直容器(Vertical Container)** - 将对象按垂直方向堆叠。 - 同样支持动态调整高度以适应不同屏幕尺寸。 - 更适合于分层显示数据视图或多组信息。 这两种容器可以通过拖拽轻松创建,并允许嵌套其他容器或者单独的工作表来构建复杂的布局结构[^3]。 --- #### 如何创建和管理容器? ##### 创建步骤: 虽然题目要求不使用具体步骤描述,但仍可通过功能说明表达如下内容: - 用户可以在仪表板编辑模式下右键单击空白区域选择添加新容器; - 或者直接选取现有项目后将其移入新建好的框架内部完成初始化设置过程[^2]。 ##### 调整属性: 对于已有的每一个容器实例而言,均具备独立配置界面可供修改其外观样式与行为特性。例如改变边距大小、背景颜色填充效果等视觉参数;还可以定义溢出策略当内容超出指定范围时如何表现——隐藏多余部分还是滚动浏览全部细节[^3]。 --- #### 实际应用场景举例 假设存在这样一个需求场景:需要在一个单一页面内同时呈现销售趋势折线图 alongside top performing products 的条形统计分布情况,则可以借助水平容器实现两者的横向拼接摆放效果。与此同时为了进一步增强用户体验,在下方再追加一组基于时间维度筛选条件的操作按钮集合封装至另一个垂直取向下的子级区块之中从而达成整体协调统一而又层次分明的信息传递目标[^1]。 ```python # 示例代码片段 (伪代码表示) dashboard.add_horizontal_container() horizontal_container.add_chart("Sales Trend Line Chart") horizontal_container.add_chart("Top Products Bar Chart") vertical_container = dashboard.add_vertical_container() vertical_container.add_filter_button("Date Range Selector") ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值