Skip to content

Commit e9ae75f

Browse files
authored
fix(geometry): line, area color field ignore xField (#1672)
* fix(geometry): line, area color field ignore xField * fix: remove unused import
1 parent 53882cd commit e9ae75f

File tree

4 files changed

+20
-4
lines changed

4 files changed

+20
-4
lines changed

__tests__/unit/adaptor/geometries/base-spec.ts

+16
Original file line numberDiff line numberDiff line change
@@ -134,6 +134,22 @@ describe('adaptor - geometry', () => {
134134
});
135135
});
136136

137+
it('color with colorField and interval', () => {
138+
const plot = getPlot('interval', {
139+
xField: 'date',
140+
yField: 'value',
141+
colorField: 'type',
142+
mapping: {
143+
color: function () {
144+
return 'red';
145+
},
146+
},
147+
});
148+
149+
expect(plot.chart.geometries[0].type).toBe('interval');
150+
expect(plot.chart.geometries[0].getAttribute('color').getFields()).toEqual(['type', 'date', 'value']);
151+
});
152+
137153
it('size without sizeField', () => {
138154
let p;
139155
const plot = getPlot('interval', {

src/adaptor/geometries/base.ts

+3-2
Original file line numberDiff line numberDiff line change
@@ -108,8 +108,9 @@ export function geometry<O extends GeometryOptions>(params: Params<O>): Params<O
108108
if (isString(color)) {
109109
colorField ? geometry.color(colorField, color) : geometry.color(color);
110110
} else if (isFunction(color)) {
111-
// 对于单折线图的特殊处理,如果 x 轴是分类 scale,会导致映射错误
112-
const mappingFields = getMappingField(options, 'color').filter((f: string) => f !== xField);
111+
// 对于单折线图、单面积图的特殊处理,如果 x 轴是分类 scale,会导致映射错误
112+
let mappingFields = getMappingField(options, 'color');
113+
mappingFields = ['line', 'area'].includes(type) ? mappingFields.filter((f: string) => f !== xField) : mappingFields;
113114
geometry.color(mappingFields.join('*'), getMappingFunction(mappingFields, color));
114115
} else {
115116
colorField && geometry.color(colorField, color);

src/plots/pie/interaction/pie-statistic-action.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { Action } from '@antv/g2/lib/interaction';
22
import { ComponentOption } from '@antv/g2/lib/interface';
3-
import { each, get, isFunction } from '@antv/util';
3+
import { each, get } from '@antv/util';
44

55
/**
66
* Pie 中心文本事件的 Action

src/plots/tiny-line/constants.ts

-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import { get } from '@antv/util';
2-
import { Data } from '../../types';
32

43
export const DEFAULT_TOOLTIP_OPTIONS = {
54
showTitle: false,

0 commit comments

Comments
 (0)