@antv/g2plot
Version:
G2 Plot, a market of plots built with the Grammar of Graphics'
54 lines (53 loc) • 1.75 kB
TypeScript
import { LayerConfig } from '../../base/layer';
import ViewLayer, { ViewConfig } from '../../base/view-layer';
import { DataItem } from '../../interface/config';
import './component/label/outer-label';
import './component/label/inner-label';
import './component/label/outer-center-label';
import './theme';
import { LineStyle } from '../line/layer';
interface PieStyle extends LineStyle {
stroke?: string;
lineWidth?: number;
}
export interface PieViewConfig extends ViewConfig {
angleField: string;
colorField?: string;
radius?: number;
pieStyle?: PieStyle | ((...args: any[]) => PieStyle);
label?: PieLabel;
}
declare type PieLabel = Omit<ViewConfig['label'], 'offset'> & {
offset?: string | number;
/** label leader-line */
line?: {
smooth?: boolean;
};
/** allow label overlap */
allowOverlap?: boolean;
readonly fields?: string[];
};
export interface PieLayerConfig extends PieViewConfig, LayerConfig {
}
export default class PieLayer<T extends PieLayerConfig = PieLayerConfig> extends ViewLayer<T> {
static getDefaultOptions(): any;
pie: any;
spiderLabel: any;
type: string;
getOptions(props: T): any;
afterInit(): void;
protected geometryParser(dim: any, type: any): any;
protected scale(): void;
protected processData(data?: DataItem[]): DataItem[] | undefined;
protected axis(): void;
protected coord(): void;
protected addGeometry(): void;
protected animation(): void;
protected annotation(): void;
protected parseEvents(eventParser: any): void;
private label;
private showLabel;
/** 调整 label 默认 options */
protected adjustLabelDefaultOptions(options: PieLayerConfig): PieLabel;
}
export {};