Bump Chart
Rank over time as smooth S-curves between rank positions, with each series named at its right end.
$149 once · every Pro piece
Point at a line and it brightens while the others step back, and the header rolls to its rank, value and the places it gained or lost; click to pin it, and the pinned line alone runs in the accent. New data springs every node to its new rank on its own spring, so you watch the overtakes happen. Up and Down move between ranks, Left and Right between steps, Enter pins. Options: rank numbers in badges, straight segments, names at both ends, the top three drawn brighter, a ranked tooltip, dotted background, and loading and empty states.
Install
npx shadcn@latest add @obsyde/bump-chartNeeds your licence key · Get Pro
Usage
Import it from where the CLI puts it, or copy the files below by hand.
import { BumpChart } from '@/components/obsyde/ember/bump-chart/BumpChart';
export function Example() {
return (
<BumpChart series={6} />
);
}
Files
What you get with Pro: plain React, TypeScript and CSS, with no dependencies.
ember/bump-chart/BumpChart.tsxcomponentember/bump-chart/bump-chart.cssstylesember/bump-chart/BumpChartDemo.tsxdemoember/viz-kit/viz-kit.csssharedember/viz-kit/Tooltip.tsxsharedember/viz-kit/focus.tssharedember/viz-kit/patterns.tsxsharedember/viz-kit/roll.tssharedember/shared/rolling-number.csssharedember/shared/spring.tssharedember/shared/accent.tssharedember/viz-kit/scale.tssharedember/viz-kit/motion.tssharedember/viz-kit/chart.tsxsharedember/shared/ember.csssharedember/viz-kit/touch.tssharedember/viz-kit/keyboard.tssharedember/viz-kit/size.tssharedember/viz-kit/States.tsxsharedember/viz-kit/shape.tssharedember/viz-kit/Grid.tsxsharedember/viz-kit/demo.tsxsharedember/viz-kit/demo.csssharedember/viz-kit/Axis.tsxshared
API
| Prop | Type | Default |
|---|---|---|
accentAccent | 'ember' | 'volt' | 'arc' | 'ember' |
seriesSeries | number | 6 |
stepsSteps | number | 8 |
focusedPinned series | number | -1 |
markersMarkers | 'dot' | 'rank' | 'none' | 'dot' |
curveCurve | 'bump' | 'linear' | 'bump' |
namesNames | 'end' | 'both' | 'end' |
highlightTopHighlight top | number | 0 |
tooltipTooltip | 'none' | 'panel' | 'none' |
crosshairCrosshair | 'solid' | 'dashed' | 'gradient' | 'none' | 'solid' |
backgroundBackground | 'grid' | 'dots' | 'none' | 'grid' |
revealReveal | 'sweep' | 'cool' | 'rise' | 'fade' | 'none' | 'sweep' |
statusStatus | 'ready' | 'loading' | 'empty' | 'ready' |
heightHeight | number | 300 |
seedSeed | number | 21 |