From a03df1858f938a94b25e0c6b685d62a923ebd7bf Mon Sep 17 00:00:00 2001 From: LonelySnowman <2438490168@qq.com> Date: Wed, 4 Jun 2025 18:58:56 +0800 Subject: [PATCH 1/2] fix: solve ciclePacking valueField field not work --- .../series/circle-packing/circle-packing.ts | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/packages/vchart/src/series/circle-packing/circle-packing.ts b/packages/vchart/src/series/circle-packing/circle-packing.ts index 7ad17e82d4..9c12b97f84 100644 --- a/packages/vchart/src/series/circle-packing/circle-packing.ts +++ b/packages/vchart/src/series/circle-packing/circle-packing.ts @@ -84,6 +84,18 @@ export class CirclePackingSeries< return [this._valueField]; } + _updateValueField = (data: Array) => { + if (this._spec.valueField) { + return data.map(item => { + return { + ...item, + value: item[this._spec.valueField] + }; + }); + } + return data; + }; + setAttrFromSpec(): void { super.setAttrFromSpec(); @@ -119,11 +131,18 @@ export class CirclePackingSeries< (this as unknown as IDrillable).initDrillableData(this._dataSet); } + // 注册映射 value 为指定字段 + registerDataSetInstanceTransform(this._dataSet, 'updateValueField', this._updateValueField); // 注册布局算法 registerDataSetInstanceTransform(this._dataSet, 'circlePackingLayout', circlePackingLayout); // 注册扁平化算法 registerDataSetInstanceTransform(this._dataSet, 'flatten', flatten); + // 映射 value 为指定字段 + rawData.transform({ + type: 'updateValueField' + }); + // 布局算法 rawData.transform({ type: 'circlePackingLayout', From 60522b51ab93e6d43a40b4275f9e170a4930c930 Mon Sep 17 00:00:00 2001 From: LonelySnowman <2438490168@qq.com> Date: Wed, 4 Jun 2025 19:02:45 +0800 Subject: [PATCH 2/2] docs: update changelog --- .../vchart/fix-circle-pack-field_2025-06-04-11-02.json | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 common/changes/@visactor/vchart/fix-circle-pack-field_2025-06-04-11-02.json diff --git a/common/changes/@visactor/vchart/fix-circle-pack-field_2025-06-04-11-02.json b/common/changes/@visactor/vchart/fix-circle-pack-field_2025-06-04-11-02.json new file mode 100644 index 0000000000..b1fdcb8a95 --- /dev/null +++ b/common/changes/@visactor/vchart/fix-circle-pack-field_2025-06-04-11-02.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@visactor/vchart", + "comment": "fix: solve ciclePacking valueField field not work", + "type": "none" + } + ], + "packageName": "@visactor/vchart" +} \ No newline at end of file