import React from 'react'; import { Chart, Axis, Tooltip, Geom } from 'bizcharts'; import autoHeight from '../autoHeight'; import styles from '../index.less'; export interface IAxis { title: any; line: any; gridAlign: any; labels: any; tickLine: any; grid: any; label: any; } export interface IMiniAreaProps { color?: string; height?: number; borderColor?: string; line?: boolean; animate?: boolean; xAxis?: IAxis; forceFit?: boolean; scale?: { x?: any; y?: any }; yAxis?: Partial; borderWidth?: number; data: Array<{ x: number | string; y: number; }>; } class MiniArea extends React.Component { render() { const { height = 1, data = [], forceFit = true, color = 'rgba(24, 144, 255, 0.2)', borderColor = '#1089ff', scale = { x: {}, y: {} }, borderWidth = 2, line, xAxis, yAxis, animate = true, } = this.props; const padding: [number, number, number, number] = [36, 5, 30, 5]; const scaleProps = { x: { type: 'cat', range: [0, 1], ...scale!.x, }, y: { min: 0, ...scale!.y, }, }; const tooltip: [string, (...args: any[]) => { name?: string; value: string }] = [ 'x*y', (x: string, y: string) => ({ name: x, value: y, }), ]; const chartHeight = height + 54; return (
{height > 0 && ( {line ? ( ) : ( )} )}
); } } export default autoHeight()(MiniArea);