@qn-pandora/pandora-visualization
Version:
Pandora 通用可视化库
39 lines (38 loc) • 1.52 kB
TypeScript
import { EChartFieldType } from '@qn-pandora/app-sdk';
import { LegendPositionType } from '../../../constants/chart-style';
import ILegendChartStyleService from '../../../base-pandora-visualization/services/chart-style/charts/legend';
import { IKeyValues } from '../../../models/base';
import ChartStyleService from '../../../base-pandora-visualization/services/chart-style/charts/base';
import BaseChartStore from './base';
export interface ILegendSeries {
/** name来自的data字段名称 */
title?: string;
/** 唯一标志series的名字 */
name: string;
/** 当前legend对应的数据 */
data?: {
current: number[];
compare?: number[];
};
/** 统计的指标名 */
metricName?: string;
/** 是否为叠加折线 */
isOverlap?: boolean;
/** legend的颜色 */
color?: string;
/** 字段类型 */
fieldType?: EChartFieldType;
}
/**
* 带Legend图表的基Store
*/
export default abstract class LegendChartStore<T extends ChartStyleService = ChartStyleService> extends BaseChartStore<T> {
legendState: IKeyValues<boolean>;
abstract legendSeriesData: ILegendSeries[];
abstract chartOptions: any;
get legendPosition(): LegendPositionType;
get legendChartStyleService(): ILegendChartStyleService<import("../../../base-pandora-visualization/services/chart-style/components/legend").default> & T;
get isHorizontalLegend(): boolean;
setLegendState(legendState: IKeyValues<boolean>): void;
get options(): any;
}