---
url: /v6.2/chart-advanced-calculation.md
---
# 图表高级计算

## 高级计算种类

图表中支持的高级数据包括百分比、百分位数、同环比、累计、移动、重复、留存、活跃、窗口计算。

* [百分比](percent.md)
* [百分位数](percentile.md)
* [同环比](sameperiodcompare.md)
* [累计](cumulation.md)
* [移动](shift.md)
* [重复](repetition.md)
* [留存](retain.md)
* [活跃](active.md)
* [窗口计算](window-calculation.md)

## 高级计算支持的数据源

| 数据源        | 百分比 |百分位数| 同环比| 累计 | 移动 | 重复 | 留存 | 活跃 | 窗口计算
| :--------:   |:----: |:----:| :--: | :--:| :--:| :--:|:--: | :--: | :--: |
| Engine       |   ✓   |  ✓   |  ✓   |  ✓  |  ✓  |  ✓  |  ✓  |  ✓   |  ✓   |
| Postgresql   |   ✓   |  ✓   |  ✓   |  ✓  |  ✓  |  ✓  |  ✓  |  ✓   |  ✓   |
| Oracle       |   ✓   |  ✓   |  ✓   |  ✓  |  ✓  |  ✓  |  ✓  |  ✓   |  ✓   |
| Mysql8       |   ✓   |  ✓   |  ✓   |  ✓  |  ✓  |  ✓  |  ✓  |  ✓   |  ✓   |
| SQL Server 2017-CU8 |   ✓   |  ✓   |  ✓   |  ✓  |  ✓  |  ✓  |  ✓  |  ✓   |  ✓   |
| Redshift     |   ✓   |  ✓   |  ✓   |  ✓  |  ✓  |  ✓  |  ✓  |  ✓   |  ✓   |
| Impala       |   ✓   |  ✓   |  ✓   |  ✓  |  ✓  |  ✓  |  ✓  |  ✓   |  ✓   |
| Presto       |   ✓   |  ✓   |  ✓   |  ✓  |  ✓  |  ✓  |  ✓  |  ✓   |  ✓   |
| Greenplum    |   ✓   |  ✓   |  ✓   |  ✓  |  ✓  |  ✓  |  ✓  |  ✓   |  ✓   |
| Hive         |   ✓   |  ✓   |  ✓   |  ✓  |  ✓  |  ✓  |  ✓  |  ✓   |  ✓   |
| Spark SQL    |   ✓   |  ✓   |  ✓   |  ✓  |  ✓  |  ✓  |  ✓  |  ✓   |  ✓   |
| DB2          |   ✓   |  ✓   |  ✓   |  ✓  |  ✓  |  ✓  |  ✓  |  ✓   |  ✓   |
| MaxCompute   |   ✓   |  ✗   |  ✓   |  ✓  |  ✓  |  ✓  |  ✓  |  ✓   |  ✓   |

注：

* Engine 是指开启引擎的数据集
* Tidb、Mysql 5、MongoDB 不支持高级计算，MaxCompute 不支持百分位数计算

## 高级计算的交互规则

* 涉及“XX 率”的，选定后显示格式自动切换为“保留两位小数的百分比”格式，切出“XX 率”后取消所有格式
* 对于“同环比”、“累计”、“移动”、“活跃”、“留存”，仅当数据集中存在日期字段时才出现
* 当处在时间维度计算模式下的“同环累移活留”（时间相关的高级计算）时，时间维度被选择成“天周月季年”以外的聚合方式，或者时间维度被移除时，取消高级计算（变成“无”或者数值字段恢复成默认聚合计算（比如“求和”））
* 时间维度选择“周”的时候，周的划分方法依据是 ISO 8601时间日期表示法，即1月1日如果是周1到周4，则1月1日所在的周为当年的第1周
* 高级计算在新增加一个维度的时候，增加的维度能够起到过滤条件的效果
