import { Chart, ChartAxis, ChartGroup, ChartLabel, ChartLegend, ChartLine, ChartVoronoiContainer } from '@patternfly/react-charts/victory'; interface PetData { name?: string; x?: string; y?: number; symbol?: { type: string }; } export const ChartLegendLinks: React.FunctionComponent = () => { // Custom legend label component const LegendLabel = ({ _datum, ...rest }) => ( ); // Custom legend component const getLegend = (legendData) => } />; const legendData: PetData[] = [ { name: 'Cats' }, { name: 'Dogs', symbol: { type: 'dash' } }, { name: 'Birds' }, { name: 'Mice' } ]; const data1: PetData[] = [ { name: 'Cats', x: '2015', y: 1 }, { name: 'Cats', x: '2016', y: 2 }, { name: 'Cats', x: '2017', y: 5 }, { name: 'Cats', x: '2018', y: 3 } ]; const data2: PetData[] = [ { name: 'Dogs', x: '2015', y: 2 }, { name: 'Dogs', x: '2016', y: 1 }, { name: 'Dogs', x: '2017', y: 7 }, { name: 'Dogs', x: '2018', y: 4 } ]; const data3: PetData[] = [ { name: 'Birds', x: '2015', y: 3 }, { name: 'Birds', x: '2016', y: 4 }, { name: 'Birds', x: '2017', y: 9 }, { name: 'Birds', x: '2018', y: 5 } ]; const data4: PetData[] = [ { name: 'Mice', x: '2015', y: 3 }, { name: 'Mice', x: '2016', y: 3 }, { name: 'Mice', x: '2017', y: 8 }, { name: 'Mice', x: '2018', y: 7 } ]; return (
`${datum.name}: ${datum.y}`} constrainToVisibleArea /> } legendComponent={getLegend([{ name: 'Cats' }, { name: 'Dogs' }, { name: 'Birds' }, { name: 'Mice' }])} legendData={legendData} legendPosition="bottom" height={275} maxDomain={{ y: 10 }} minDomain={{ y: 0 }} name="chart8" padding={{ bottom: 75, // Adjusted to accommodate legend left: 50, right: 50, top: 50 }} width={450} > } /> } />
); };