diff --git a/site/docs/api/insight/auto-insights.en.md b/site/docs/api/insight/auto-insights.en.md
index cf41e571..a60287b6 100644
--- a/site/docs/api/insight/auto-insights.en.md
+++ b/site/docs/api/insight/auto-insights.en.md
@@ -27,7 +27,25 @@ Run different algorithms from multi-dimensional data to discover interesting pat
| impactWeight | `number ∈(0, 1)` | Insight score = Impact score * impactWeight + Significance * (1 - impactWeight). | `0.3` |
| homogeneous | `boolean` | on/off extra homogeneous insight extraction. | `false` |
| ignoreSubspace | `boolean` | Whether to close the search for subspaces. | `false` |
-| algorithmParameter | `AlgorithmParameter` | Adjustable algorithm parameters | `{}` |
+| algorithmParameter | `AlgorithmParameter` | Adjustable algorithm parameters | none |
+| dataProcessInfo | `Extra` | Configuration of data processing during data verification | none |
+
+* ***AlgorithmParameter*** Adjustable algorithm parameters
+
+| Properties | Type | Description | Default|
+| ----| ---- | ---- | -----|
+| outlier | `OutlierParameter` | parameter of category outlier and time series outlier algorithm | `{ method: 'IQR', iqrK: 1.5, confidenceInterval: 0.95 }` |
+| trend | `CommonParameter` | Parameters of the trend algorithm | `{ threshold: 0.05 }` |
+| changePoint | `CommonParameter` | Parameter of the change point algorithm | `{ threshold: 0.05 }` |
+| correlation | `PCorrTestParameter` | Parameter of the correlation algorithm | `{ alpha 0.05, alternative: 'two-sided', rho: 0 }` |
+| lowVariance | `LowVarianceParameter` | Parameter of the low variance algorithm | `{ cvThreshold 0.15 }` |
+| majority | `MajorityParameter` | Parameter of the majority algorithm | `{ limit 0.6 }` |
+
+* ***Extra*** Parameter passed through to the data frame during data pre-processing
+
+| Properties | Type | Description | Default|
+| ----| ---- | ---- | -----|
+| strictDatePattern | `boolean` | Whether only the main standard symbols recommended in ISO 8601 can be recognized as date fields | `true` |
* ***InsightVisualizationOptions*** Insight output visualization options
diff --git a/site/docs/api/insight/auto-insights.zh.md b/site/docs/api/insight/auto-insights.zh.md
index ab67c250..50a1bc66 100644
--- a/site/docs/api/insight/auto-insights.zh.md
+++ b/site/docs/api/insight/auto-insights.zh.md
@@ -30,7 +30,26 @@ order: 1
| impactWeight | `number ∈(0, 1)` | 指定洞察分数计算的Impact权重: Insight score = Impact score * impactWeight + Significance * (1 - impactWeight). | `0.3` |
| homogeneous | `boolean` | 是否提取数据中的共性洞察 | `false` |
| ignoreSubspace | `boolean` | 是否关闭对子空间的洞察提取 | `false` |
-| algorithmParameter | `AlgorithmParameter` | 可调的算法参数 | `{}` |
+| algorithmParameter | `AlgorithmParameter` | 可调的算法参数 | 无 |
+| dataProcessInfo | `Extra` | 数据校验时数据处理的配置 | 无 |
+
+* ***AlgorithmParameter*** 可调的算法参数
+
+| 属性 | 类型 | 描述 | 默认值 |
+| ----| ---- | ---- | -----|
+| outlier | `OutlierParameter` | 类别异常(category_outlier)和时序异常(time_series_outlier)的算法参数 | `{ method: 'IQR', iqrK: 1.5, confidenceInterval: 0.95 }` |
+| trend | `CommonParameter` | 趋势(trend)洞察算法的参数 | `{ threshold: 0.05 }` |
+| changePoint | `CommonParameter` | 突变点算法(change_point)的参数 | `{ threshold: 0.05 }` |
+| correlation | `PCorrTestParameter` | 相关性算法(correlation) 的参数 | `{ alpha 0.05, alternative: 'two-sided', rho: 0 }` |
+| lowVariance | `LowVarianceParameter` | 低方差算法(low_variance)的参数 | `{ cvThreshold 0.15 }` |
+| majority | `MajorityParameter` | 主要影响因素算法(majority)的参数 | `{ limit 0.6 }` |
+
+* ***Extra*** 数据处理配置
+
+| 属性 | 类型 | 描述 | 默认值 |
+| ----| ---- | ---- | -----|
+| strictDatePattern | `boolean` | 是否按照ISO标准识别日期字段 | `true` |
+
* ***InsightVisualizationOptions*** 可视化输出配置
diff --git a/site/docs/api/insight/get-specific-insight.en.md b/site/docs/api/insight/get-specific-insight.en.md
new file mode 100644
index 00000000..4e9bb607
--- /dev/null
+++ b/site/docs/api/insight/get-specific-insight.en.md
@@ -0,0 +1,66 @@
+---
+title: getSpecificInsight
+order: 3
+---
+
+
+
+
+Extract insight of a specified type from the data and corresponding visualization specs.
+
+## **getSpecificInsight**
+
+(props: SpecificInsightProps): SpecificInsightResult
+
+* ***SpecificInsightProps*** is the same as `InsightExtractorProps`. See [InsightExtractorProps API](./insight-patterns-extractor.en.md) for more details.
+
+* ***SpecificInsightResult*** output
+
+| Properties | Type | Description | Example|
+| ----| ---- | ---- | -----|
+| subspace | `Subspace` | The subspace of the data subject | `[{ dimension: 'Year', value: '2000' }]`(subspace: Year = 2000) |
+| dimensions | `string[]` | The dimensions of the data subject | `['country']` |
+| measures | `Measure[]` | The measures of the data subject | `[{ field: 'life_expect', method: 'MEAN' }]` |
+| data | `Datum[]` | data | `[{ country: 'China', life_expect: 61 }]` |
+| patterns | `PatternInfo[]` | The collection of patterns in the data | `[{ type: 'outlier', significance: 0.98, dimension: 'country', measure: 'life_expect', index: 5, x: 'china', y: '43' }, ...]` |
+| visualizationSpecs | `InsightVisualizationSpec[]` | The insight visualization scheme, including chart type, title, insight description, and chart configuration (based on G2Spec) | `[{ type: 'column_chart', caption: string, narrativeSpec: string[] \| IPhrase[][], chartSpec: G2Spec }]` |
+
+### Usage
+
+* Extract time series outlier insights from the data.
+
+```ts
+import { getSpecificInsight } from '@antv/ava';
+
+getSpecificInsight({
+ data,
+ measures: [{ fieldName: 'life_expect', method: 'MEAN' }],
+ dimensions: [{ fieldName: 'date' }],
+ insightType: 'time_series_outlier',
+});
+```
+
+* Custom algorithm parameters
+
+```ts
+import { getSpecificInsight } from '@antv/ava';
+
+const insightResult = getSpecificInsight({
+ data,
+ measures: [{ fieldName: 'life_expect', method: 'MEAN' }],
+ dimensions: [{ fieldName: 'date' }],
+ insightType: 'time_series_outlier',
+ options: {
+ // Filter out not significant insights
+ filterInsight: true,
+ // Verify whether the input meets the algorithm requirements
+ dataValidation: true,
+ // Adjust the significance test threshold
+ algorithmParameter: {
+ outlier: {
+ threshold: 0.05,
+ },
+ },
+ }
+});
+```
diff --git a/site/docs/api/insight/get-specific-insight.zh.md b/site/docs/api/insight/get-specific-insight.zh.md
new file mode 100644
index 00000000..b850f809
--- /dev/null
+++ b/site/docs/api/insight/get-specific-insight.zh.md
@@ -0,0 +1,66 @@
+---
+title: getSpecificInsight
+order: 3
+---
+
+
+
+从数据中提取的指定类型的洞察和对应的可视化spec。
+
+## **getSpecificInsight**
+
+(props: SpecificInsightProps): SpecificInsightResult
+
+* ***SpecificInsightProps*** 和`InsightExtractorProps`相同,详见 [InsightExtractorProps API](./insight-patterns-extractor.zh.md)。
+
+* ***SpecificInsightResult*** 输出内容
+
+| 属性 | 类型 | 描述 | 示例 |
+| ----| ---- | ---- | -----|
+| subspace | `Subspace` | 该洞察数据主体的子空间信息(Subspace)。 | `[{ dimension: 'Year', value: '2000' }]`(子空间为 Year = 2000) |
+| dimensions | `string[]` | 该洞察数据主体的维度, 并且作为下一轮子空间划分的分组维度。 | `[fieldName: 'country']` |
+| measures | `Measure[]` | 该洞察数据主体的计算指标。 | `[{ field: 'life_expect', method: 'MEAN' }]` |
+| data | `Datum[]` | 该洞察数据主体的相关数据。 | `[{ country: 'China', life_expect: 61 }]` |
+| patterns | `PatternInfo[]` | 该洞察数据主体上的模式集合 | `[{ type: 'outlier', significance: 0.98, dimension: 'country', measure: 'life_expect', index: 5, x: 'china', y: '43' }, ...]` |
+| visualizationSpecs | `visualizationSpec[]` | 该洞察的可视化方案,包含图表类型、标题、洞察描述以及图表配置(基于G2Plot) | `[{ type: 'column_chart', caption: string, narrativeSpec: string[] \| IPhrase[][], chartSpec: G2PlotConfig }]` |
+
+### 用例
+
+* 指定从数据中提取时序异常类型的洞察结果。
+
+```ts
+import { getSpecificInsight } from '@antv/ava';
+
+getSpecificInsight({
+ data,
+ measures: [{ fieldName: 'life_expect', method: 'MEAN' }],
+ dimensions: [{ fieldName: 'date' }],
+ insightType: 'time_series_outlier',
+});
+```
+
+* 自定义算法参数
+
+```ts
+import { getSpecificInsight } from '@antv/ava';
+
+const insightResult = getSpecificInsight({
+ data,
+ measures: [{ fieldName: 'life_expect', method: 'MEAN' }],
+ dimensions: [{ fieldName: 'date' }],
+ insightType: 'time_series_outlier',
+ options: {
+ // 筛选显著的洞察结果
+ filterInsight: true,
+ // 进行数据校验
+ dataValidation: true,
+ // 调整显著性检验的相关参数
+ algorithmParameter: {
+ outlier: {
+ method: 'IQR',
+ iqrK: 1.5,
+ },
+ },
+ }
+});
+```
diff --git a/site/docs/api/insight/insight-patterns-extractor.en.md b/site/docs/api/insight/insight-patterns-extractor.en.md
index 716432c8..59413901 100644
--- a/site/docs/api/insight/insight-patterns-extractor.en.md
+++ b/site/docs/api/insight/insight-patterns-extractor.en.md
@@ -6,7 +6,7 @@ order: 2
-Extract specified types of insights from the data.
+Extract insight of a specified type from the data.
## **insightPatternsExtractor**
@@ -15,29 +15,31 @@ Extract specified types of insights from the data.
* ***InsightExtractorProps*** configuration of insightPatternsExtractor
-| Properties | Type | Description | Default|
+| Properties | Type | Description | Example |
| ----| ---- | ---- | -----|
| data | `Datum[]` | data | `[{ value: 1000, year: 2023 }, { value: 900, year: 2022 }]` |
| measures | `Measure[]` | Specify the fields as measures and the corresponding aggregation methods | `[{ fieldName: 'value', method: 'SUM' }]` |
| dimensions | `Dimensions[]` | Specify the dimensions involved in the calculation | `[fieldName: 'year']` |
| insightType | `InsightType[]` | Specify the types of insight | `['category_outlier', 'trend', 'change_point', 'time_series_outlier', 'majority','low_variance', 'correlation']`(All supported types) |
-| options | `InsightExtractorOptions` | optional configuration | |
+| options | `InsightExtractorOptions` | optional configuration | none |
* ***InsightExtractorOptions*** optional configuration
+The contents of `dataProcessInfo`, `algorithmParameter` and `visualizationOptions` can be seen in [InsightOptions API](./auto-insights.en.md). No further details will be given here.
+
| Properties | Type | Description | Default|
| ----| ---- | ---- | -----|
-| algorithmParameter | `AlgorithmParameter` | Adjustable algorithm parameters | `{}` |
+| algorithmParameter | `AlgorithmParameter` | Adjustable algorithm parameters | none |
| filterInsight | `boolean` | Whether to filter significant insights | `false` |
| dataValidation | `boolean` | Whether to verify whether the data meets the requirements | `false` |
-| dataProcessInfo | `Extra` | Configuration of data processing during data verification | `{}` |
+| dataProcessInfo | `Extra` | Configuration of data processing during data verification | none |
| visualizationOptions | `InsightVisualizationOptions` | visualization options | `{ lang: 'zh-CN' }` |
* ***PatternInfo*** Includes the following types of insights
| Type | Description | Example|
| ----| ---- | ---- |
-| TrendInfo | trend | `{ type: 'trend', significance: 0.99, trend: 'decreasing', regression: {} }`|
+| TrendInfo | trend | `{ type: 'trend', significance: 0.99, trend: 'decreasing', regression: { r2: 0.5, points: [], equation: [] } }`|
| TimeSeriesOutlierInfo | time series outlier | `{ type: 'time_series_outlier', significance: 0.96, baselines: [], thresholds: [], x: 12, y: 32, index: 2 }` |
| CategoryOutlierInfo | category outlier | `{ type: 'category_outlier', significance: 0.97, x: 12, y: 32, index: 2 }` |
| LowVarianceInfo | low variance | `{ type: 'low_variance', significance: 0.99, dimension: 'year', measure: 'country', mean: 43 }` |
@@ -45,7 +47,7 @@ Extract specified types of insights from the data.
| CorrelationInfo | correlation | `{ type: 'correlation', significance: 0.96, pcorr: 0.9, measure: [] }` |
| MajorityInfo | majority | `{ type: 'majority', significance: 0.98, proportion: 0.6, x: 12, y: 32, index: 2 }` |
-### 用例
+### Usage
* Extract trend insights from the data.
@@ -59,3 +61,28 @@ insightPatternsExtractor({
insightType: 'trend',
});
```
+
+* Custom algorithm parameters
+
+```ts
+import { getSpecificInsight } from '@antv/ava';
+
+const insightResult = getSpecificInsight({
+ data,
+ measures: [{ fieldName: 'life_expect', method: 'MEAN' }],
+ dimensions: [{ fieldName: 'date' }],
+ insightType: 'trend',
+ options: {
+ // Keep insignificant insights
+ filterInsight: false,
+ // Verify whether the input meets the algorithm requirements
+ dataValidation: true,
+ // Adjust the significance test threshold
+ algorithmParameter: {
+ trend: {
+ threshold: 0.05,
+ },
+ },
+ }
+});
+```
diff --git a/site/docs/api/insight/insight-patterns-extractor.zh.md b/site/docs/api/insight/insight-patterns-extractor.zh.md
index 19f19039..2ac33772 100644
--- a/site/docs/api/insight/insight-patterns-extractor.zh.md
+++ b/site/docs/api/insight/insight-patterns-extractor.zh.md
@@ -21,23 +21,25 @@ order: 2
| measures | `Measure[]` | 指定作为指标的字段和对应的聚合方法 | `[{ fieldName: 'value', method: 'SUM' }]` |
| dimensions | `Dimensions[]` | 指定参与计算的维度 | `[fieldName: 'year']` |
| insightType | `InsightType[]` | 指定计算的洞察类型 | `['category_outlier', 'trend', 'change_point', 'time_series_outlier', 'majority','low_variance', 'correlation']`(所有支持类型) |
-| options | `InsightExtractorOptions` | 可选配置项 | |
+| options | `InsightExtractorOptions` | 可选配置项 | 见下方`InsightExtractorOptions`的详细介绍 |
* ***InsightExtractorOptions*** 可选配置项
+其中`dataProcessInfo`,`algorithmParameter`和`visualizationOptions`的内容可见 [InsightOptions API](./auto-insights.zh.md)。此处不再赘述。
+
| 属性 | 类型 | 描述 | 默认值 |
| ----| ---- | ---- | -----|
-| algorithmParameter | `AlgorithmParameter` | 可调的算法参数 | `{}` |
+| algorithmParameter | `AlgorithmParameter` | 可调的算法参数 | 无 |
| filterInsight | `boolean` | 是否过滤有效洞察 | `false` |
| dataValidation | `boolean` | 是否校验数据是否符合要求 | `false` |
-| dataProcessInfo | `Extra` | 数据校验时数据处理的配置 | `{}` |
+| dataProcessInfo | `Extra` | 数据校验时数据处理的配置 | 无 |
| visualizationOptions | `InsightVisualizationOptions` | 可视化spec配置 | `{ lang: 'zh-CN' }` |
* ***PatternInfo*** 包含以下几种洞察类型
| 类型 | 描述 | 示例 |
| ----| ---- | ---- |
-| TrendInfo | 趋势 | `{ type: 'trend', significance: 0.99, trend: 'decreasing', regression: {} }`|
+| TrendInfo | 趋势 | `{ type: 'trend', significance: 0.99, trend: 'decreasing', regression: { r2: 0.5, points: [], equation: [] } }`|
| TimeSeriesOutlierInfo | 时序异常 | `{ type: 'time_series_outlier', significance: 0.96, baselines: [], thresholds: [], x: 12, y: 32, index: 2 }` |
| CategoryOutlierInfo | 类别 | `{ type: 'category_outlier', significance: 0.97, x: 12, y: 32, index: 2 }` |
| LowVarianceInfo | 低方差 | `{ type: 'low_variance', significance: 0.99, dimension: 'year', measure: 'country', mean: 43 }` |
@@ -59,3 +61,28 @@ insightPatternsExtractor({
insightType: 'trend',
});
```
+
+* 自定义算法参数
+
+```ts
+import { getSpecificInsight } from '@antv/ava';
+
+const insightResult = getSpecificInsight({
+ data,
+ measures: [{ fieldName: 'life_expect', method: 'MEAN' }],
+ dimensions: [{ fieldName: 'date' }],
+ insightType: 'trend',
+ options: {
+ // 保留不显著的洞察结果
+ filterInsight: false,
+ // 进行数据校验
+ dataValidation: true,
+ // 调整显著性检验的相关参数
+ algorithmParameter: {
+ trend: {
+ threshold: 0.05,
+ },
+ },
+ }
+});
+```
diff --git a/site/docs/guide/insight/intro.en.md b/site/docs/guide/insight/intro.en.md
index e9a5a0f0..c1e61a19 100644
--- a/site/docs/guide/insight/intro.en.md
+++ b/site/docs/guide/insight/intro.en.md
@@ -56,6 +56,24 @@ insightPatternsExtractor({
});
```
+### getSpecificInsight 使用
+
+The `getSpecificInsight` method can not only obtain the specified type of insight, but also output a visual spec. Combined with the `InsightCard` component, the insight results can be presented in a visual way. Input parameters are the same as the `insightPatternsExtractor` method. Detailed output parameters are described in the [InsightInfo API](../../api/insight/auto-insight.zh.md)。
+
+
+```ts
+import { getSpecificInsight } from '@antv/ava';
+
+const insightResult = getSpecificInsight({
+ data,
+ measures: [{ fieldName: 'life_expect', method: 'MEAN' }],
+ dimensions: [{ fieldName: 'date' }],
+ insightType: 'trend',
+});
+
+
+```
+
## 📖 Documentation
For more usages, please check the [API Reference](../../api/insight/auto-insights).
diff --git a/site/docs/guide/insight/intro.zh.md b/site/docs/guide/insight/intro.zh.md
index 7774ef56..6878cfc8 100644
--- a/site/docs/guide/insight/intro.zh.md
+++ b/site/docs/guide/insight/intro.zh.md
@@ -57,6 +57,24 @@ insightPatternsExtractor({
});
```
+### getSpecificInsight 使用
+
+`getSpecificInsight`方法不仅能获取指定类型的洞察结果,还能输出可视化spec,结合`InsightCard`组件就能通过可视化的方式呈现指定类型的洞察结果。输入输出参数详见 [getSpecificInsight API](../../api/insight/get-specific-insight.zh.md)。
+
+
+```ts
+import { getSpecificInsight } from '@antv/ava';
+
+const insightResult = getSpecificInsight({
+ data,
+ measures: [{ fieldName: 'life_expect', method: 'MEAN' }],
+ dimensions: [{ fieldName: 'date' }],
+ insightType: 'trend',
+});
+
+
+```
+
## 📖 文档
更多用法请移步至 [API](../../api/insight/auto-insights)。
diff --git a/site/examples/insight/basic/demo/meta.json b/site/examples/insight/basic/demo/meta.json
index 6d0628a5..ae5a9040 100644
--- a/site/examples/insight/basic/demo/meta.json
+++ b/site/examples/insight/basic/demo/meta.json
@@ -24,7 +24,7 @@
"filename": "specify-type.jsx",
"title": {
"zh": "指定洞察类型",
- "en": "Extract specified types of insights"
+ "en": "Extract insight of a specified type"
},
"screenshot": "https://gw.alipayobjects.com/zos/antfincdn/zt2jXO97%262/li-basic.gif"
}