1 | import { AdjustCfg, Data, Range } from '../interface';
|
2 | export declare type AdjustConstructor = new (cfg: any) => Adjust;
|
3 | export interface DimValuesMapType {
|
4 | [dim: string]: number[];
|
5 | }
|
6 | export default abstract class Adjust {
|
7 |
|
8 | adjustNames: string[];
|
9 |
|
10 | xField: string;
|
11 |
|
12 | yField: string;
|
13 |
|
14 | dodgeRatio: number;
|
15 |
|
16 | marginRatio: number;
|
17 |
|
18 | dodgeBy: string;
|
19 |
|
20 | customOffset: ((data: any, range: any) => number) | number;
|
21 | height: number;
|
22 | size: number;
|
23 | reverseOrder: boolean;
|
24 | /** 像素级组间距 */
|
25 | intervalPadding: number;
|
26 | /** 像素级组内间距 */
|
27 | dodgePadding: number;
|
28 | /** x维度长度,计算归一化padding使用 */
|
29 | xDimensionLegenth: number;
|
30 | /** 分组数 */
|
31 | groupNum: number;
|
32 | /** 用户配置宽度 */
|
33 | defaultSize: number;
|
34 | /** 最大宽度约束 */
|
35 | maxColumnWidth: number;
|
36 | /** 最小宽度约束 */
|
37 | minColumnWidth: number;
|
38 | /** 宽度比例 */
|
39 | columnWidthRatio: number;
|
40 | /** 用户自定义的dimValuesMap */
|
41 | dimValuesMap: DimValuesMapType;
|
42 | constructor(cfg: AdjustCfg & {
|
43 | dimValuesMap?: DimValuesMapType;
|
44 | });
|
45 | abstract process(dataArray: Data[][]): Data[][];
|
46 | /**
|
47 | * 查看维度是否是 adjust 字段
|
48 | * @param dim
|
49 | */
|
50 | isAdjust(dim: string): boolean;
|
51 | protected getAdjustRange(dim: string, dimValue: number, values: number[]): Range;
|
52 | protected adjustData(groupedDataArray: Data[][], mergedData: Data[]): void;
|
53 | /**
|
54 | * 对数据进行分组adjustData
|
55 | * @param data 数据
|
56 | * @param dim 分组的字段
|
57 | * @return 分组结果
|
58 | */
|
59 | protected groupData(data: Data[], dim: string): {
|
60 | [dim: string]: Data[];
|
61 | };
|
62 | /** @override */
|
63 | protected adjustDim(dim: string, values: number[], data: Data[], index?: number): void;
|
64 | /**
|
65 | * 获取可调整度量对应的值
|
66 | * @param mergedData 数据
|
67 | * @return 值的映射
|
68 | */
|
69 | private getDimValues;
|
70 | }
|
71 |
|
\ | No newline at end of file |