import chroma from 'chroma-js'; import { multiDateData, longMultiDateData } from 'reaviz-data-utils'; import { LineChart } from 'reaviz'; import { StackedAreaChart, StackedNormalizedAreaChart, StackedAreaSeries, Line, StackedNormalizedAreaSeries, PointSeries } from 'reaviz'; import { LinearXAxisTickSeries, LinearXAxis, LinearYAxisTickSeries, LinearYAxis } from 'reaviz'; import { LineSeries } from 'reaviz'; import { ScatterPoint } from 'reaviz'; export default { tags: ['snapshot'], title: 'Charts/Line Chart/Multi Series', component: LineChart, subcomponents: { LineSeries, Line, StackedAreaChart, StackedNormalizedAreaChart, StackedAreaSeries, StackedNormalizedAreaSeries } }; export const _Simple = () => ( } colorScheme="cybertron" /> } data={multiDateData} /> ); export const Clicked = () => ( } colorScheme="cybertron" symbols={ true} onClick={(data) => { console.log('Clicked node:' + JSON.stringify(data)); }} /> } /> } /> } data={multiDateData} /> ); export const LargeData = () => ( } /> } xAxis={ } /> } series={ } colorScheme="cybertron" /> } /> ); LargeData.tags = ['skip-snapshot']; export const CustomLineStyles = () => ( { if ( data && data.length && data[0] && data[0].key === 'Threat Intel' ) { console.log('Style callback...', data); return { strokeDasharray: '5' }; } }} /> } colorScheme={chroma .scale(['27efb5', '00bfff']) .colors(multiDateData.length)} /> } data={multiDateData} /> ); export const _LargeDataset = () => ( } data={longMultiDateData} /> ); _LargeDataset.tags = ['skip-snapshot']; export const Stacked = () => ( } /> } data={multiDateData} /> ); export const StackedNormalized = () => ( } /> } /> ); const prettyData = (() => { const data: any[] = []; for (let i = 0; i < 20; i++) { const series: any[] = []; for (let j = 0; j < 100; j++) { series.push({ key: j, data: (i / 10 + 1) * Math.sin((Math.PI * (i + j)) / 50) }); } data.push({ key: i, data: series }); } return data; })();