diff --git a/common/changes/@visactor/vchart/fix-set-domain-of-field_2025-03-25-07-57.json b/common/changes/@visactor/vchart/fix-set-domain-of-field_2025-03-25-07-57.json new file mode 100644 index 0000000000..568b294286 --- /dev/null +++ b/common/changes/@visactor/vchart/fix-set-domain-of-field_2025-03-25-07-57.json @@ -0,0 +1,11 @@ +{ + "changes": [ + { + "comment": "fix: data.fields can set domain of field\n\n", + "type": "none", + "packageName": "@visactor/vchart" + } + ], + "packageName": "@visactor/vchart", + "email": "dingling112@gmail.com" +} \ No newline at end of file diff --git a/common/changes/@visactor/vchart/fix-set-domain-of-field_2025-03-26-02-12.json b/common/changes/@visactor/vchart/fix-set-domain-of-field_2025-03-26-02-12.json new file mode 100644 index 0000000000..4f71f8e5a7 --- /dev/null +++ b/common/changes/@visactor/vchart/fix-set-domain-of-field_2025-03-26-02-12.json @@ -0,0 +1,11 @@ +{ + "changes": [ + { + "comment": "feat: add options `full` to lockStatisticsByDomain\n\n", + "type": "none", + "packageName": "@visactor/vchart" + } + ], + "packageName": "@visactor/vchart", + "email": "dingling112@gmail.com" +} \ No newline at end of file diff --git a/packages/vchart/src/data/transforms/dimension-statistics.ts b/packages/vchart/src/data/transforms/dimension-statistics.ts index 5f783f3190..1207633b00 100644 --- a/packages/vchart/src/data/transforms/dimension-statistics.ts +++ b/packages/vchart/src/data/transforms/dimension-statistics.ts @@ -143,7 +143,7 @@ export const dimensionStatisticsOfSimpleData = ( if (f.customize) { result[key][op] = f.customize; } else { - if (dataFieldInKey && dataFieldInKey.lockStatisticsByDomain && !isNil(dataFieldInKey.domain)) { + if (dataFieldInKey && dataFieldInKey.lockStatisticsByDomain === true && !isNil(dataFieldInKey.domain)) { if (op === 'values') { result[key][op] = dataFieldInKey.domain.slice(); return; diff --git a/packages/vchart/src/typings/spec/common.ts b/packages/vchart/src/typings/spec/common.ts index 85fd53c156..8d98ac10e4 100644 --- a/packages/vchart/src/typings/spec/common.ts +++ b/packages/vchart/src/typings/spec/common.ts @@ -279,12 +279,18 @@ export type BuildInTransformOptions = export interface IFieldsMeta { /** TODO: 字段通用format, 暂时先不支持 */ // format?: (datum: Datum, index: number) => unknown; - /** 字段别名 */ + /** + * 字段别名 + */ alias?: string; /** 字段取值范围 */ domain?: StringOrNumber[]; - /** 是否使用 domain 锁定统计信息。默认为 false */ - lockStatisticsByDomain?: boolean; + /** + * 是否使用 domain 锁定统计信息。默认为 false + * true - 在图例交互场景,也固定domain + * 当设置为 `onlyFull` 时,仅在初始化的展示完整数据的场景锁定domain,在交互触发的筛选场景不锁定 + */ + lockStatisticsByDomain?: boolean | 'onlyFull'; /** 连续型 还是 离散型 */ type?: 'ordinal' | 'linear'; /** 排序顺序 不设置的话当前维度不进行排序 */