interface Params { // 系列类型 seriesType: string; // 系列在传入的 option.series 中的 index seriesIndex: number; // 系列名称 seriesName: string; // 数据名,类目名 name: string; // 数据在传入的 data 数组中的 index dataIndex: number; // 传入的原始数据项 data: Object; // 传入的数据值。在多数系列下它和 data 相同。在一些系列下是 data 中的分量(如 map、radar 中) value: number | Array | Object; // 数据图形的颜色 color: string; // 饼图的百分比 percent: number; // 坐标轴 encode 映射信息, // key 为坐标轴(如 'x' 'y' 'radius' 'angle' 等) // value 必然为数组,不会为 null/undefied,表示 dimension index 。 // 其内容如: // { // x: [2] // dimension index 为 2 的数据映射到 x 轴 // y: [0] // dimension index 为 0 的数据映射到 y 轴 // } // encode: Object // 维度名列表 // dimensionNames: Array // 数据的维度 index,如 0 或 1 或 2 ... // 仅在雷达图中使用。 // dimensionIndex: number } type FormatterFunction = (params: Array, callback?) => string | HTMLElement | HTMLElement[]; export interface TooltipOptions { trigger?: 'item' | 'axis' | 'none'; show?: boolean; axisPointer?: { type?: string; // shadowStyle?: React.CSSProperties, TODO:暂时不支持 }; renderMode?: 'html' | 'richText' | 'canvas'; width?: number; formatter?: string | FormatterFunction; formatMode?: 'replace' | 'append'; } export interface TooltipDataItem { name: string; value: number; isFake?: boolean; color: string; seriesName?: string; percent?: string; } interface Point { x: number; y: number; } export interface TooltipEventParams { coordinate?: 'cartesian' | 'polar'; centerX?: number; point?: Point; data?: TooltipDataItem[]; selectedIndex?: number; }