# 通过标签容器基于选择显示不同图表

该示例示出了如何使用标签容器基于用户选择显示不同的图表内容。

* 当选择了单个产品组时，会显示产品子组的图表。
* 当选择了不止一个产品组时，会显示产品组的图表。

## 数据集

在该示例中，我们将使用 Qlik Sense 教程 - 构建应用程序 中的两个数据文件。要下载文件，转至 [教程 - 构建应用程序](https://help.qlik.com/zh-CN/sense/May2025/tutorials/Tutorial%20-%20Building%20an%20App.zip)。下载并解压教程，在 Tutorials source 文件夹中找到文件：

* Sales.xls
* Item master.xls

新建应用程序，并添加两个数据文件。确保它们按 Item Number 相关。

加载的数据集包含销售数据。Item master 含有关于已排序条目的信息，诸如产品组。

## 度量

我们需要在主条目中创建两个度量：

* 销量：具有名称 Sales 以及表达式 `Sum(Sales)`。
* 按百分比计的销售利润：具有名称 Margin % 以及表达式 `Avg(Margin/Sales)*100`。

## 可视化

我们需要两个基于产品组选择的不同主可视化。其中一个以产品组作为维度，而另一个以产品子组作为维度。

### 产品组可视化

这是选择了不止一个产品组时我们希望显示的可视化。

我们向工作表添加组合图，并设置以下数据属性：

* 维度：Product Group（产品组）。
* 度量：Sales（您创建的主度量）。

创建了以下图表，其中有显示每个产品组销量的条形。它在该阶段是条形图。

![带条形的组合图](https://help.qlik.com/zh-CN/sense/May2025/Subsystems/Hub/Content/Resources/Images/ex_gen_combo_chart_1.png)

但我们还希望显示销售利润，而销售利润的刻度和销量不同。销量采用百万为刻度，而利润是介于 0 和 100 之间的百分比。如果我们将利润作为销量旁的条形添加，它将因为过小而无法区分。

在属性窗格中，转到度量 &gt; 线高度。使用下拉框将 Margin % 作为度量添加。

![带条形和线的组合图](https://help.qlik.com/zh-CN/sense/May2025/Subsystems/Hub/Content/Resources/Images/ex_gen_combo_chart_2.png)

### 产品子组可视化

这是选择单个产品组时我们希望显示的可视化。

创建产品组可视化的副本，并将维度更改为 Product Sub Group。

### 主可视化

您需要创建两个主可视化，以便在标签容器中使用。

* 添加产品组可视化，其为具有名称 Product Group - sales and margin 的主可视化。
* 添加产品子组可视化，其为具有名称 Product Sub Group - sales and margin 的主可视化。

您现在可删除自己之前创建的两个可视化，它们被另存为主可视化。

### 标签容器

您需要将标签容器添加至工作表。将两个可视化添加至标签容器。

* Product Group - sales and margin

  将显示条件设置为 `=GetPossibleCount([Product Group])>1`

* Product Sub Group - sales and margin

  将显示条件设置为 `=GetPossibleCount([Product Group])=1`

您还可在外观 &gt; 容器 &gt; 标签下隐藏容器的选择标签。

要展示其作用方式，可以添加具有 Product Group 的筛选器窗格。

## 探索

您可以在 Product Group 下进行选择。当选择单个产品组时，图表会显示该产品组的产品子组的数据。否则，图表会显示产品组的数据。