import { Fragment, useState } from 'react'; import chroma from 'chroma-js'; import { multiDateData, randomNumber, longMultiDateData } from 'reaviz-data-utils'; import { AreaChart } from 'reaviz'; import { StackedNormalizedAreaChart } from 'reaviz'; import { StackedAreaChart } from 'reaviz'; import { Area, AreaSeries, Line, PointSeries, StackedAreaSeries, StackedNormalizedAreaSeries } from 'reaviz'; export default { tags: ['snapshot'], title: 'Charts/Area Chart/Multi Series', component: AreaChart, subcomponents: { AreaSeries, Area, Line, PointSeries, StackedAreaSeries, StackedNormalizedAreaSeries } }; export const Simple = () => ( } /> ); export const LargeDataset = () => ( } data={longMultiDateData} /> ); LargeDataset.tags = ['skip-snapshot']; export const LiveUpdating = () => ; LiveUpdating.tags = ['no-snapshot']; export const CustomColors = () => ( (index % 2 ? 'blue' : 'green')} /> } data={multiDateData} /> ); export const Stacked = () => ( } data={multiDateData} /> ); export const StackedNormalized = () => ( } /> ); const LiveUpdatingStory = () => { const [data, setData] = useState(multiDateData.map((d) => ({ ...d }))); const updateData = () => { const newData = [...data]; const idx = randomNumber(0, newData.length - 1); const set = newData[idx]; const updateIndex = randomNumber(0, set.data.length - 1); set.data[updateIndex].data = randomNumber(10, 50); setData(newData); }; return ( } data={data} />
); }; LiveUpdatingStory.tags = ['no-snapshot'];