# Dimensionality - 图表函数

Dimensionality() 用于返回当前行的维度数量。在透视表中，此函数返回包含非聚合内容的总维度列数，即不包含部分总和或折叠聚合。

语法：

Dimensionality ( )

返回数据类型： 整数

限制：

此函数仅可用于图表。对于除透视表之外的所有图表类型，它会返回除总计之外的所有行的维度数，即 0。

当在图表的任何表达式中使用此图表函数时，不允许对图表中的 y 值进行排序或按表中的表达式列进行排序。因此，这些排序替代项会自动禁用。当您在可视化或表格中使用此图表函数时，可视化的排序将返回到此函数的排序输入。

## 示例：Dimensionality 基础知识

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/InterRecordFunctions/dimensionality.htm)

#### 示例 - 图表表达式

Dimensionality() 函数可与透视表一起用作图表表达式，其中您希望根据具有非聚合数据的行中的维度数应用不同的单元格格式。本例使用 Dimensionality() 函数将背景色应用于与给定条件匹配的表格单元格。

### 加载脚本

将以下数据作为数据加载编辑中的内联加载载入，以创建以下图表表达式示例。

```
ProductSales:

Load * inline [
Country,Product,Sales,Budget
Sweden,AA,100000,50000
Germany,AA,125000,175000
Canada,AA,105000,98000
Norway,AA,74850,68500
Ireland,AA,49000,48000
Sweden,BB,98000,99000
Germany,BB,115000,175000
Norway,BB,71850,68500
Ireland,BB,31000,48000
] (delimiter is ',');
```

有关使用内联加载的详细信息，请参阅[使用内联加载来加载数据](https://help.qlik.com/zh-CN/sense/May2025/Subsystems/Hub/Content/Sense_Hub/Scripting/inline-loads-qs.htm)。

### 图表表达式

在 Qlik Sense 工作表中创建头饰表可视化，以 Country 和 Product 为维度。添加 Sum(Sales)、Sum(Budget) 和 Dimensionality() 作为度量。

在属性面板中，输入以下表达式作为 Sum(Sales) 度量值的背景色表达式。

```
If(Dimensionality()=1 and Sum(Sales)<Sum(Budget),RGB(255,156,156),
If(Dimensionality()=2 and Sum(Sales)<Sum(Budget),RGB(178,29,29)
))
```

### 结果：

![使用维度的透视表。](https://help.qlik.com/zh-CN/sense/May2025/Subsystems/Hub/Content/Resources/Images/dimensionality-pivot-table.png)

### 解释

表达式 `If(Dimensionality()=1 and Sum(Sales)<Sum(Budget),RGB(255,156,156),
If(Dimensionality()=2 and Sum(Sales)<Sum(Budget),RGB(178,29,29)))` 包含检查维度值以及每个产品的 Sum(Sales) 和 Sum(Budget) 的条件语句。如果满足这些条件，则对 Sum(Sales) 值应用背景色。