UNPKG

1.85 kBPlain TextView Raw
1export type ScaleType = 'base' | 'linear' | 'cat' | 'log' | 'pow' | 'identity' | 'time' | 'timeCat';
2
3export type TickMethod = (ScaleConfig) => any[];
4
5export interface Tick {
6 /** 展示名 */
7 text: string;
8 /** 值域值 */
9 value: number;
10 /** 定义域值 */
11 tickValue: string | number;
12}
13
14export type ScaleConfig = Partial<{
15 /** 对应的字段id */
16 field: string;
17 /** 输入域、定义域 */
18 values: any[];
19 /** 定义域的最小值,d3为domain,ggplot2为limits,分类型下无效 */
20 min: any;
21 /** 定义域的最大值,分类型下无效 */
22 max: any;
23 /** 严格模式下的定义域最小值,设置后会强制 ticks 从最小值开始 */
24 minLimit?: any;
25 /** 严格模式下的定义域最大值,设置后会强制 ticks 已最大值结束 */
26 maxLimit?: any;
27
28 /** 数据字段的显示别名,scale内部不感知,外部注入 */
29 alias: string;
30 /** 输出域、值域,默认值为[0, 1] */
31 range: number[];
32 /** Log有效,底数 */
33 base: number;
34 /** Pow有效,指数 */
35 exponent: number;
36
37 // tick相关配置
38 /** 自动调整min、max */
39 nice: boolean;
40 /** 用于指定tick,优先级最高 */
41 ticks: any[];
42 /** tick间隔,只对分类型和时间型适用,优先级高于tickCount */
43 tickInterval: number;
44 /** tick最小间隔,只对线型适用 */
45 minTickInterval: number;
46 /** tick个数,默认值为5 */
47 tickCount: number;
48 /** ticks最大值,默认值为10 */
49 maxTickCount: number;
50 /** tick格式化函数,会影响数据在坐标轴 axis、图例 legend、tooltip 上的显示 */
51 formatter: (value: any, index?: number) => any;
52 /** 计算 ticks 的算法 */
53 tickMethod: string | TickMethod;
54 /** 时间度量 time, timeCat 时有效 */
55 mask?: string;
56 /** 是否始终保留最后一个 tick */
57 showLast?: boolean;
58}>;