import React, { Fragment, useState } from 'react'; import chroma from 'chroma-js'; import { multiDateData, singleDateData, randomNumber } from 'reaviz-data-utils'; import { AreaChart } from 'reaviz'; import { Area, AreaSeries, Line, PointSeries, StackedAreaSeries, StackedNormalizedAreaSeries } from 'reaviz'; import { LinearXAxis, LinearXAxisTickSeries, LinearYAxis, LinearYAxisTickSeries, LinearYAxisTickLabel, LinearXAxisTickLabel } from 'reaviz'; import { getYScale, getXScale } from 'reaviz'; export default { tags: ['snapshot'], title: 'Charts/Area Chart/Axis', component: AreaChart, subcomponents: { AreaSeries, Area, Line, PointSeries, StackedAreaSeries, StackedNormalizedAreaSeries } }; export const TopBottomAxis = () => { const scale = getXScale({ type: 'category', width: 450, data: [ { key: 'Before', data: 0, x: 'Before' }, { key: 'After', data: 0, x: 'After' } ] }); return ( } /> } /> } secondaryAxis={[ } /> } /> ]} yAxis={} /> ); }; TopBottomAxis.story = { name: 'Top + Bottom Axis' }; export const LeftRightAxis = () => { const scale = getYScale({ type: 'category', height: 200, data: [ { key: 'Low', data: 0, y: 'Low' }, { key: 'High', data: 0, y: 'High' } ] }); return ( } /> } /> } secondaryAxis={[ } /> } /> ]} xAxis={} /> ); }; LeftRightAxis.story = { name: 'Left + Right Axis' }; 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} />
); };